Ignore:
Timestamp:
May 3, 2016, 5:25:45 PM (9 years ago)
Author:
Silvan Scherrer
Message:

smplayer: update trunk to version 16.4

Location:
smplayer/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • smplayer/trunk

  • smplayer/trunk/src/inforeader.h

    r165 r176  
    11/*  smplayer, GUI front-end for mplayer.
    2     Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net>
     2    Copyright (C) 2006-2016 Ricardo Villalba <rvm@users.sourceforge.net>
    33
    44    This program is free software; you can redistribute it and/or modify
     
    1818
    1919
    20 #ifndef _INFOREADER_H_
    21 #define _INFOREADER_H_
     20#ifndef INFOREADER_H
     21#define INFOREADER_H
    2222
    2323#include <QObject>
    2424#include <QList>
    25 
    26 #define USE_QPROCESS 1
    27 
    28 #if USE_QPROCESS
    29 class QProcess;
    30 #else
    31 class MyProcess;
    32 #endif
     25#include <QStringList>
     26#include "config.h"
    3327
    3428class InfoData {
     
    4539        void setDesc(QString desc) { _desc = desc; };
    4640
    47         QString name() { return _name; };
    48         QString desc() { return _desc; };
     41        QString name() const { return _name; };
     42        QString desc() const { return _desc; };
     43
     44        bool operator<(const InfoData & other) const {
     45                return name() < other.name();
     46        }
     47
     48        bool operator==(const InfoData & other) const {
     49                return name() == other.name();
     50        }
    4951
    5052private:
     
    6365        ~InfoReader();
    6466
     67        void setPlayerBin(const QString & bin);
     68        QString playerBin() { return mplayerbin; }
     69
    6570        void getInfo();
    6671
    6772        InfoList voList() { return vo_list; };
    6873        InfoList aoList() { return ao_list; };
     74
     75#if ALLOW_DEMUXER_CODEC_CHANGE
    6976        InfoList demuxerList() { return demuxer_list; };
    7077        InfoList vcList() { return vc_list; };
    7178        InfoList acList() { return ac_list; };
     79#endif
     80        QStringList vfList() { return vf_list; };
     81        QStringList optionList() { return option_list; };
    7282
    73         int mplayerVersion() { return mplayer_svn; };
     83        int mplayerSVN() { return mplayer_svn; };
     84        QString mpvVersion() { return mpv_version; };
     85        QString mplayer2Version() { return mplayer2_version; };
     86        bool isMplayer2() { return is_mplayer2; };
     87        bool isMPV() { return is_mpv; };
    7488
    75         //! Returns an InfoReader objects. If it didn't exist before, one
    76         //! is created and getInfo() is called.
    77         static InfoReader * obj();
     89        QString playerVersion();
    7890
    79 protected slots:
    80         virtual void readLine(QByteArray);
     91        //! Returns an InfoReader object. If it didn't exist before, one
     92        //! is created.
     93        static InfoReader * obj(const QString & mplayer_bin = QString::null);
    8194
    8295protected:
    83         bool run(QString options);
    84         void list();
    85 
    86 protected:
    87 #if USE_QPROCESS
    88         QProcess * proc;
    89 #else
    90         MyProcess * proc;
    91 #endif
    9296        QString mplayerbin;
    9397
    9498        InfoList vo_list;
    9599        InfoList ao_list;
     100
     101#if ALLOW_DEMUXER_CODEC_CHANGE
    96102        InfoList demuxer_list;
    97103        InfoList vc_list;
    98104        InfoList ac_list;
     105#endif
     106        QStringList vf_list;
     107        QStringList option_list;
    99108
    100109        int mplayer_svn;
     110        QString mpv_version;
     111        QString mplayer2_version;
     112        bool is_mplayer2, is_mpv;
    101113
    102114private:
    103         bool waiting_for_key;
    104         int reading_type;
    105 
    106115        static InfoReader * static_obj;
     116        static QStringList convertInfoListToList(InfoList l);
     117        static InfoList convertListToInfoList(QStringList l);
    107118};
    108119
Note: See TracChangeset for help on using the changeset viewer.