X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/f973710dc6bcfc13f8db4e5720dd2aeb1518b012..5c644fbbceaa79a49501975de16b090771edee29:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index f84b9613..3c3248c4 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -22,7 +22,6 @@ public: }; int type; - int flags; // flags will NOT be compared. enum { isDirectory=1, // SHOULD enter (implies mustDescent) @@ -40,21 +39,25 @@ public: hasSortKey=16, // has a sort key in data[3]. not having a sort key implies 0. sort1=32 // sort key is 1 instead of 0 }; + int flags; // flags will NOT be compared. inline int getSortKey() const { return (flags & hasSortKey) ? data[3] : ((flags & sort1) ? 1 : 0); } +#ifndef SWIG int data[8]; std::string path; +#endif std::string getPath() { return path; } + void setPath( const std::string &n ) { path=n; } - int getData(int num) const + int getData(unsigned int num) const { if ( num < sizeof(data)/sizeof(int) ) return data[num]; return 0; } - void setData(int num, int val) + void setData(unsigned int num, int val) { if ( num < sizeof(data)/sizeof(int) ) data[num] = val; @@ -62,9 +65,10 @@ public: // only for override service names in bouquets or to give servicerefs a name which not have a // real existing service ( for dvb eServiceDVB ) +#ifndef SWIG std::string name; +#endif std::string getName() { return name; } - void setName( const std::string &n ) { name=n; } eServiceReference() @@ -72,6 +76,7 @@ public: { memset(data, 0, sizeof(data)); } +#ifndef SWIG eServiceReference(int type, int flags) : type(type), flags(flags) { @@ -122,6 +127,7 @@ public: { memset(data, 0, sizeof(data)); } +#endif eServiceReference(const std::string &string); std::string toString() const; bool operator==(const eServiceReference &c) const @@ -278,15 +284,19 @@ public: enum { dirForward = +1, dirBackward = -1 }; virtual RESULT seekRelative(int direction, pts_t to)=0; virtual RESULT getPlayPosition(pts_t &SWIG_OUTPUT)=0; + /* if you want to do several seeks in a row, you can enable the trickmode. + audio will be switched off, sync will be disabled etc. */ + virtual RESULT setTrickmode(int trick=0)=0; }; TEMPLATE_TYPEDEF(ePtr, iSeekableServicePtr); struct iAudioTrackInfo { +#ifndef SWIG std::string m_description; std::string m_language; /* iso639 */ - +#endif std::string getDescription() { return m_description; } std::string getLanguage() { return m_language; } };