#include<ktime.h>
Definition at line65of filektime.h.
Time Modes and Protocols | |
enum | ETimeMode |
Time modes.More... | |
enum | ETimeProtocol |
Time protocols.More... | |
static void | SetGlobalTimeMode(ETimeModepTimeMode, double pFrameRate=0.0) |
Set default time mode. | |
staticETimeMode | GetGlobalTimeMode() |
Get default time mode. | |
static void | SetGlobalTimeProtocol(ETimeProtocolpTimeProtocol) |
Set default time protocol. | |
staticETimeProtocol | GetGlobalTimeProtocol() |
Get default time protocol. | |
static double | GetFrameRate(ETimeModepTimeMode) |
Get frame rate associated with time mode, in frames per second. | |
staticETimeMode | ConvertFrameRateToTimeMode(double pFrameRate, double lPrecision=0.00000001) |
Get time mode associated with frame rate. | |
Time Conversion | |
void | Set(kLongLong pTime) |
Set time in internal format. | |
const kLongLong& | Get() const |
Get time in internal format. | |
void | SetMilliSeconds(kLongLong pMilliSeconds) |
Set time in milliseconds. | |
kLongLong | GetMilliSeconds() const |
Get time in milliseconds. | |
void | SetSecondDouble(double pTime) |
Set time in seconds. | |
double | GetSecondDouble() const |
Get time in seconds. | |
void | SetTime(int pHour, int pMinute, int pSecond, int pFrame=0, int pField=0, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) |
Set time in hour/minute/second/frame/field format. | |
void | SetTime(int pHour, int pMinute, int pSecond, int pFrame, int pField, int pResidual, int pTimeMode, double pFramerate=0.0) |
Set time in hour/minute/second/frame/field/residual format. | |
bool | GetTime(kLongLong&pHour, kLongLong&pMinute, kLongLong&pSecond, kLongLong&pFrame, kLongLong&pField, kLongLong&pResidual, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get time in hour/minute/second/frame/field/residual format. | |
KTime | GetFramedTime(bool pRound=true) |
Set time in internal format. | |
kLongLong | GetHour(bool pCummul=false, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get number of hours in time. | |
kLongLong | GetMinute(bool pCummul=false, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get number of minutes in time. | |
kLongLong | GetSecond(bool pCummul=false, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get number of seconds in time. | |
kLongLong | GetFrame(bool pCummul=false, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get number of frames in time. | |
kLongLong | GetField(bool pCummul=false, int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get number of fields in time. | |
kLongLong | GetResidual(int pTimeMode=eDEFAULT_MODE, double pFramerate=0.0) const |
Get residual time exceeding last full field. | |
char * | GetTimeString(char *pTimeString, int pInfo=5, int pTimeMode=eDEFAULT_MODE, int pTimeFormat=eDEFAULT_PROTOCOL, double pFramerate=0.0) const |
Get time in a human readable format. | |
void | SetTimeString(char *pTime, int pTimeMode=eDEFAULT_MODE, int pTimeFormat=eDEFAULT_PROTOCOL, double pFramerate=0.0) |
Set time in a human readable format. | |
Time Operators | |
bool | operator==(constKTime&pTime) const |
Equality operator. | |
bool | operator!=(constKTime&pTime) const |
Inequality operator. | |
bool | operator>=(constKTime&pTime) const |
Superior or equal to operator. | |
bool | operator<=(constKTime&pTime) const |
Inferior or equal to operator. | |
bool | operator>(constKTime&pTime) const |
Superior to operator. | |
bool | operator<(constKTime&pTime) const |
Inferior to operator. | |
KTime& | operator=(constKTime&pTime) |
Assignment operator. | |
KTime& | operator+=(constKTime&pTime) |
Addition operator. | |
KTime& | operator-=(constKTime&pTime) |
Subtraction operator. | |
KTime | operator+(constKTime&pTime) const |
Addition operator. | |
KTime | operator-(constKTime&pTime) const |
Subtraction operator. | |
KTime | operator*(const int Mult) const |
Multiplication operator. | |
KTime | operator/(constKTime&pTime) const |
Division operator. | |
KTime | operator*(constKTime&pTime) const |
Multiplication operator. | |
KTime& | operator++() |
Increment time of one unit of the internal format. | |
KTime& | operator--() |
Decrement time of one unit of the internal format. | |
Public Member Functions | |
KTime(kLongLong pTime=0) | |
Constructor. |
enumETimeMode |
Time modes.
eNTSC_DROP_FRAME
is used for broadcasting operations where clock time must be (almost) in sync with timecode. To bring back color NTSC timecode with clock time, this mode drops 2 frames per minute except for every 10 minutes (00, 10, 20, 30, 40, 50). 108 frames are dropped per hour. Over 24 hours the error is 2 frames and 1/4 of a frame.eNTSC_FULL_FRAME
represents a time address and therefore is NOT IN SYNC with clock time. A timecode of 01:00:00:00 equals a clock time of 01:00:03:18.eFRAMES30_DROP
drops 2 frames every minutes except for every 10 minutes (00, 10, 20, 30, 40, 50). This timecode represents a time address and is therefore NOT IN SYNC with clock time. A timecode of 01:00:03:18 equals a clock time of 01:00:00:00. It is the close counterpart of modeeNTSC_FULL_FRAME
. Time modes.enumETimeProtocol |
KTime | ( | kLongLong | pTime=0 | ) | [inline] |
static void SetGlobalTimeMode | ( | ETimeMode | pTimeMode, | |
double | pFrameRate=0.0 | |||
) | [static] |
Set default time mode.
pTimeMode | Time mode identifier. | |
pFrameRate | in case of timemode = custom, we specify the custom framerate to use: EX:12.5 |
eDEFAULT_MODE
.staticETimeModeGetGlobalTimeMode | ( | ) | [static] |
Get default time mode.
static void SetGlobalTimeProtocol | ( | ETimeProtocol | pTimeProtocol | ) | [static] |
Set default time protocol.
pTimeProtocol | Time protocol identifier. |
eDEFAULT_PROTOCOL
.staticETimeProtocolGetGlobalTimeProtocol | ( | ) | [static] |
Get default time protocol.
static double GetFrameRate | ( | ETimeMode | pTimeMode | ) | [static] |
Get frame rate associated with time mode, in frames per second.
pTimeMode | Time mode identifier. |
staticETimeModeConvertFrameRateToTimeMode | ( | double | pFrameRate, | |
double | lPrecision=0.00000001 | |||
) | [static] |
Get time mode associated with frame rate.
pFrameRate | The frame rate value. | |
lPrecision | The tolerance value. |
eDEFAULT_MODE
if no time mode associated to the given frame rate is found.void Set | ( | kLongLong | pTime | ) | [inline] |
const kLongLong&Get | ( | ) | const[inline] |
void SetMilliSeconds | ( | kLongLong | pMilliSeconds | ) | [inline] |
kLongLong GetMilliSeconds | ( | ) | const[inline] |
void SetSecondDouble | ( | double | pTime | ) |
Set time in seconds.
pTime | Time value to set. |
double GetSecondDouble | ( | ) | const |
Get time in seconds.
void SetTime | ( | int | pHour, | |
int | pMinute, | |||
int | pSecond, | |||
int | pFrame=0 , | |||
int | pField=0 , | |||
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) |
Set time in hour/minute/second/frame/field format.
pHour | The hours value. | |
pMinute | The minutes value. | |
pSecond | The seconds value. | |
pFrame | The frames values. | |
pField | The field value. | |
pTimeMode | A time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
void SetTime | ( | int | pHour, | |
int | pMinute, | |||
int | pSecond, | |||
int | pFrame, | |||
int | pField, | |||
int | pResidual, | |||
int | pTimeMode, | |||
double | pFramerate=0.0 | |||
) |
Set time in hour/minute/second/frame/field/residual format.
pHour | The hours value. | |
pMinute | The minutes value. | |
pSecond | The seconds value. | |
pFrame | The frames values. | |
pField | The field value. | |
pResidual | The hundreths of frame value. | |
pTimeMode | A time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
The time mode can't have a default value, because otherwise SetTime(int, int, int, int, int, int) would be ambiguous. Please specify DEFAULT_MODE.
bool GetTime | ( | kLongLong& | pHour, | |
kLongLong& | pMinute, | |||
kLongLong& | pSecond, | |||
kLongLong& | pFrame, | |||
kLongLong& | pField, | |||
kLongLong& | pResidual, | |||
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get time in hour/minute/second/frame/field/residual format.
pHour | The returned hours value. | |
pMinute | The returned minutes value. | |
pSecond | The returned seconds value. | |
pFrame | The returned frames values. | |
pField | The returned field value. | |
pResidual | The returned hundreths of frame value. | |
pTimeMode | The time mode identifier which will dictate the extraction algorithm. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
true
if the pTimeMode parameter is a valid identifier and thus the extraction succeeded. If the function returnsfalse
, all the values are set to 0.KTimeGetFramedTime | ( | bool | pRound=true | ) |
Set time in internal format.
pTime | Time value to set. |
kLongLong GetHour | ( | bool | pCummul=false , | |
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get number of hours in time.
pCummul | This parameter has no effect. | |
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
kLongLong GetMinute | ( | bool | pCummul=false , | |
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get number of minutes in time.
pCummul | Iftrue , get total number of minutes. Iffalse , get number of minutes exceeding last full hour. | |
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
kLongLong GetSecond | ( | bool | pCummul=false , | |
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get number of seconds in time.
pCummul | Iftrue , get total number of seconds. Iffalse , get number of seconds exceeding last full minute. | |
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
kLongLong GetFrame | ( | bool | pCummul=false , | |
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get number of frames in time.
pCummul | Iftrue , get total number of frames. Iffalse , get number of frames exceeding last full second. | |
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
kLongLong GetField | ( | bool | pCummul=false , | |
int | pTimeMode=eDEFAULT_MODE , | |||
double | pFramerate=0.0 | |||
) | const |
Get number of fields in time.
pCummul | Iftrue , get total number of fields. Iffalse , get number of fields exceeding last full frame. | |
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
kLongLong GetResidual | ( | int | pTimeMode=eDEFAULT_MODE , | |
double | pFramerate=0.0 | |||
) | const |
Get residual time exceeding last full field.
pTimeMode | Time mode identifier. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
char* GetTimeString | ( | char * | pTimeString, | |
int | pInfo=5 , | |||
int | pTimeMode=eDEFAULT_MODE , | |||
int | pTimeFormat=eDEFAULT_PROTOCOL , | |||
double | pFramerate=0.0 | |||
) | const |
Get time in a human readable format.
pTimeString | An array large enough to contain a minimum of 19 characters. | |
pInfo | The amount of information if time protocol iseSMPTE:
| |
pTimeMode | Requested time mode. | |
pTimeFormat | Requested time protocol. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
void SetTimeString | ( | char * | pTime, | |
int | pTimeMode=eDEFAULT_MODE , | |||
int | pTimeFormat=eDEFAULT_PROTOCOL , | |||
double | pFramerate=0.0 | |||
) |
Set time in a human readable format.
pTime | An array of a maximum of 18 characters. If time protocol iseSMPTE , pTimeString must be formatted this way: "[hours:]minutes[:seconds[.frames[.fields]]]". Hours, minutes, seconds, frames and fields are parsed as integers and brackets indicate optional parts. If time protocol iseFRAME , pTimeString must be formatted this way: "frames". Frames is parsed as a 64 bits integer. | |
pTimeMode | Given time mode. | |
pTimeFormat | Given time protocol. | |
pFramerate | indicate custom framerate in case of ptimemode = eCUSTOM |
bool operator== | ( | constKTime& | pTime | ) | const[inline] |
bool operator!= | ( | constKTime& | pTime | ) | const[inline] |
bool operator>= | ( | constKTime& | pTime | ) | const[inline] |
bool operator<= | ( | constKTime& | pTime | ) | const[inline] |
bool operator> | ( | constKTime& | pTime | ) | const[inline] |
bool operator< | ( | constKTime& | pTime | ) | const[inline] |
KTimeoperator* | ( | const int | Mult | ) | const |
Multiplication operator.
KTime&operator++ | ( | ) | [inline] |