diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | e2de64d6f1beb9e492daf5b886e19933c1fa41dd (patch) | |
tree | 9047cf9e6b5c43878d5bf82660adae77ceee097a /mpeglib/lib/util/timeStamp.h | |
download | tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.tar.gz tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdemultimedia@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'mpeglib/lib/util/timeStamp.h')
-rw-r--r-- | mpeglib/lib/util/timeStamp.h | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/mpeglib/lib/util/timeStamp.h b/mpeglib/lib/util/timeStamp.h new file mode 100644 index 00000000..a45bb582 --- /dev/null +++ b/mpeglib/lib/util/timeStamp.h @@ -0,0 +1,92 @@ +/* + class for managing byte positions and associated time positions + Copyright (C) 1999 Martin Vogt + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Library General Public License as published by + the Free Software Foundation. + + For more information look at the file COPYRIGHT in this package + + */ + + +#ifndef __TIMESTAMP_H +#define __TIMESTAMP_H + + +#include "syncClock.h" + + +class TimeStamp { + + long key; + int keylen; + + int videoFrameCounter; + + timeval_t time; + + int lPTSFlag; + + double ptsTimeStamp; + double scrTimeStamp; + double dtsTimeStamp; + + class SyncClock* syncClock; + + public: + TimeStamp(); + ~TimeStamp(); + + void gettimeofday(); + void set(long sec,long usec); + + void addOffset(TimeStamp* stamp); + void addOffset(int sec,long usec); + void copyTo(TimeStamp* dest); + + long getKey(); + int getKeyLen(); + void setKey(long key,int keylen); + + int getPTSFlag(); + void setPTSFlag(int lPTSFlag); + + + double getPTSTimeStamp(); + void setPTSTimeStamp(double ptsTimeStamp); + + double getDTSTimeStamp(); + void setDTSTimeStamp(double dtsTimeStamp); + + double getSCRTimeStamp(); + void setSCRTimeStamp(double scrTimeStamp); + + int getVideoFrameCounter(); + void setVideoFrameCounter(int nr); + + SyncClock* getSyncClock(); + void setSyncClock(class SyncClock* syncClock); + + + void print(const char* name); + void minus(TimeStamp* stamp,TimeStamp* dest); + void minus(int sec,long usec); + int lessThan(TimeStamp* stamp); + int lessThan(int sec,long usec); + double getAsSeconds(); + + void waitForIt(); + timeval_t* getTime(); + + int isPositive(); + int isNegative(); + + private: + void setTime(timeval_t* newTime); + void normalize(); + + +}; +#endif |