git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
sync
[enigma2.git]
/
lib
/
dvb
/
idvb.h
diff --git
a/lib/dvb/idvb.h
b/lib/dvb/idvb.h
index d338f298533ae4ffaf2ddd84caf58baab0322708..add9ba8526829569ca8bc077381a5bc0ff5a1f70 100644
(file)
--- a/
lib/dvb/idvb.h
+++ b/
lib/dvb/idvb.h
@@
-170,6
+170,15
@@
class eDVBService: public iStaticServiceInformation
{
DECLARE_REF(eDVBService);
public:
{
DECLARE_REF(eDVBService);
public:
+ enum cacheID
+ {
+ cVPID, cAPID, cTPID, cPCRPID, cAC3PID, cacheMax
+ };
+
+ int getCachePID(cacheID);
+ void setCachePID(cacheID, int);
+ bool cacheEmpty() { return m_cache.empty(); }
+
eDVBService();
std::string m_service_name;
std::string m_provider_name;
eDVBService();
std::string m_service_name;
std::string m_provider_name;
@@
-183,6
+192,7
@@
public:
// iStaticServiceInformation
RESULT getName(const eServiceReference &ref, std::string &name);
// iStaticServiceInformation
RESULT getName(const eServiceReference &ref, std::string &name);
+ int getLength(const eServiceReference &ref);
// for filtering:
int checkFilter(const eServiceReferenceDVB &ref, const eDVBChannelQuery &query);
// for filtering:
int checkFilter(const eServiceReferenceDVB &ref, const eDVBChannelQuery &query);
@@
-435,6
+445,8
@@
public:
virtual void ReleaseUse() = 0;
};
virtual void ReleaseUse() = 0;
};
+typedef unsigned long long pts_t;
+
class iDVBPVRChannel: public iDVBChannel
{
public:
class iDVBPVRChannel: public iDVBChannel
{
public:
@@
-446,6
+458,11
@@
public:
/* FIXME: there are some very ugly buffer-end and ... related problems */
/* so this is VERY UGLY. */
virtual RESULT playFile(const char *file) = 0;
/* FIXME: there are some very ugly buffer-end and ... related problems */
/* so this is VERY UGLY. */
virtual RESULT playFile(const char *file) = 0;
+
+ virtual RESULT getLength(pts_t &pts) = 0;
+ virtual RESULT getCurrentPosition(pts_t &pos) = 0;
+
+ // seekTo ...
};
class iDVBSectionReader;
};
class iDVBSectionReader;
@@
-458,6
+475,8
@@
public:
virtual RESULT createSectionReader(eMainloop *context, ePtr<iDVBSectionReader> &reader)=0;
virtual RESULT createTSRecorder(ePtr<iDVBTSRecorder> &recorder)=0;
virtual RESULT getMPEGDecoder(ePtr<iTSMPEGDecoder> &reader)=0;
virtual RESULT createSectionReader(eMainloop *context, ePtr<iDVBSectionReader> &reader)=0;
virtual RESULT createTSRecorder(ePtr<iDVBTSRecorder> &recorder)=0;
virtual RESULT getMPEGDecoder(ePtr<iTSMPEGDecoder> &reader)=0;
+ virtual RESULT getSTC(pts_t &pts)=0;
+ virtual RESULT getCADemuxID(uint8_t &id)=0;
};
class iTSMPEGDecoder: public iObject
};
class iTSMPEGDecoder: public iObject