gwenhywfar 5.12.0
timestamp.h File Reference
#include <gwenhywfar/testframework.h>
#include <inttypes.h>
#include <time.h>
Include dependency graph for timestamp.h:

Go to the source code of this file.

Typedefs

typedef struct GWEN_TIMESTAMP GWEN_TIMESTAMP

Functions

GWENHYWFAR_API void GWEN_Timestamp_AddSeconds (GWEN_TIMESTAMP *tstamp, int seconds)
GWENHYWFAR_API int GWEN_Timestamp_AddTests (GWEN_TEST_MODULE *mod)
GWENHYWFAR_API int GWEN_Timestamp_Compare (const GWEN_TIMESTAMP *tstamp1, const GWEN_TIMESTAMP *tstamp0)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_dup (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API void GWEN_Timestamp_free (GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromDb (GWEN_DB_NODE *db)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromGmTime (time_t ti)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromInt64 (int64_t i)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromLocalTime (time_t ti)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromString (const char *s)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_fromStructTm (const struct tm *ltm)
GWENHYWFAR_API int GWEN_Timestamp_GetDay (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API int GWEN_Timestamp_GetHour (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API int GWEN_Timestamp_GetMinute (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API int GWEN_Timestamp_GetMonth (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API int GWEN_Timestamp_GetSecond (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API const char * GWEN_Timestamp_GetString (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API int GWEN_Timestamp_GetYear (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_new (int year, int month, int day, int hour, int minute, int second)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_NowInGmTime (void)
GWENHYWFAR_API GWEN_TIMESTAMPGWEN_Timestamp_NowInLocalTime (void)
GWENHYWFAR_API void GWEN_Timestamp_SetDate (GWEN_TIMESTAMP *tstamp, int year, int month, int day)
GWENHYWFAR_API void GWEN_Timestamp_SetDateAndTime (GWEN_TIMESTAMP *tstamp, int year, int month, int day, int hour, int minute, int second)
GWENHYWFAR_API void GWEN_Timestamp_SetJulianDate (GWEN_TIMESTAMP *tstamp, int julian)
GWENHYWFAR_API void GWEN_Timestamp_SetTime (GWEN_TIMESTAMP *tstamp, int hour, int minute, int second)
GWENHYWFAR_API int GWEN_Timestamp_toDb (const GWEN_TIMESTAMP *tstamp, GWEN_DB_NODE *db)
GWENHYWFAR_API int64_t GWEN_Timestamp_toInt64 (const GWEN_TIMESTAMP *tstamp)
GWENHYWFAR_API time_t GWEN_Timestamp_toTimeT (const GWEN_TIMESTAMP *tstamp)

Typedef Documentation

◆ GWEN_TIMESTAMP

Definition at line 36 of file timestamp.h.

Function Documentation

◆ GWEN_Timestamp_AddSeconds()

GWENHYWFAR_API void GWEN_Timestamp_AddSeconds ( GWEN_TIMESTAMP * tstamp,
int seconds )

Definition at line 489 of file timestamp.c.

References _setFromInt64(), and GWEN_Timestamp_toInt64().

Referenced by GWEN_MsgRequest_SetTimestamps().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_AddTests()

GWENHYWFAR_API int GWEN_Timestamp_AddTests ( GWEN_TEST_MODULE * mod)

References GWENHYWFAR_API.

◆ GWEN_Timestamp_Compare()

GWENHYWFAR_API int GWEN_Timestamp_Compare ( const GWEN_TIMESTAMP * tstamp1,
const GWEN_TIMESTAMP * tstamp0 )

Definition at line 305 of file timestamp.c.

References GWEN_Timestamp_toInt64().

Here is the call graph for this function:

◆ GWEN_Timestamp_dup()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_dup ( const GWEN_TIMESTAMP * tstamp)

Definition at line 67 of file timestamp.c.

References GWEN_NEW_OBJECT, and NULL.

Referenced by GWEN_MsgRequest_SetTimestamps().

Here is the caller graph for this function:

◆ GWEN_Timestamp_free()

GWENHYWFAR_API void GWEN_Timestamp_free ( GWEN_TIMESTAMP * tstamp)

Definition at line 81 of file timestamp.c.

References GWEN_FREE_OBJECT.

Referenced by GWEN_MsgRequest_free(), GWEN_MsgRequest_SetCreatedAt(), GWEN_MsgRequest_SetExpiresAt(), and GWEN_MsgRequest_SetTimestamps().

Here is the caller graph for this function:

◆ GWEN_Timestamp_fromDb()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromDb ( GWEN_DB_NODE * db)

Definition at line 466 of file timestamp.c.

References DBG_INFO, DBG_VERBOUS, GWEN_DB_GetCharValue(), GWEN_LOGDOMAIN, GWEN_Timestamp_fromString(), and NULL.

Here is the call graph for this function:

◆ GWEN_Timestamp_fromGmTime()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromGmTime ( time_t ti)

Definition at line 160 of file timestamp.c.

References GWEN_Timestamp_fromStructTm().

Here is the call graph for this function:

◆ GWEN_Timestamp_fromInt64()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromInt64 ( int64_t i)

Definition at line 112 of file timestamp.c.

References _setFromInt64(), GWEN_NEW_OBJECT, and NULL.

Here is the call graph for this function:

◆ GWEN_Timestamp_fromLocalTime()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromLocalTime ( time_t ti)

Definition at line 153 of file timestamp.c.

References GWEN_Timestamp_fromStructTm().

Here is the call graph for this function:

◆ GWEN_Timestamp_fromString()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromString ( const char * s)

Definition at line 405 of file timestamp.c.

References DBG_INFO, GWEN_LOGDOMAIN, GWEN_Timestamp_new(), and NULL.

Referenced by GWEN_Timestamp_fromDb().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_fromStructTm()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_fromStructTm ( const struct tm * ltm)

Definition at line 138 of file timestamp.c.

References GWEN_Timestamp_new(), and NULL.

Referenced by GWEN_Timestamp_fromGmTime(), GWEN_Timestamp_fromLocalTime(), GWEN_Timestamp_NowInGmTime(), and GWEN_Timestamp_NowInLocalTime().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_GetDay()

GWENHYWFAR_API int GWEN_Timestamp_GetDay ( const GWEN_TIMESTAMP * tstamp)

Definition at line 277 of file timestamp.c.

◆ GWEN_Timestamp_GetHour()

GWENHYWFAR_API int GWEN_Timestamp_GetHour ( const GWEN_TIMESTAMP * tstamp)

Definition at line 284 of file timestamp.c.

◆ GWEN_Timestamp_GetMinute()

GWENHYWFAR_API int GWEN_Timestamp_GetMinute ( const GWEN_TIMESTAMP * tstamp)

Definition at line 291 of file timestamp.c.

◆ GWEN_Timestamp_GetMonth()

GWENHYWFAR_API int GWEN_Timestamp_GetMonth ( const GWEN_TIMESTAMP * tstamp)

Definition at line 270 of file timestamp.c.

◆ GWEN_Timestamp_GetSecond()

GWENHYWFAR_API int GWEN_Timestamp_GetSecond ( const GWEN_TIMESTAMP * tstamp)

Definition at line 298 of file timestamp.c.

◆ GWEN_Timestamp_GetString()

GWENHYWFAR_API const char * GWEN_Timestamp_GetString ( const GWEN_TIMESTAMP * tstamp)

Definition at line 90 of file timestamp.c.

Referenced by GWEN_Timestamp_toDb().

Here is the caller graph for this function:

◆ GWEN_Timestamp_GetYear()

GWENHYWFAR_API int GWEN_Timestamp_GetYear ( const GWEN_TIMESTAMP * tstamp)

Definition at line 263 of file timestamp.c.

◆ GWEN_Timestamp_new()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_new ( int year,
int month,
int day,
int hour,
int minute,
int second )

Definition at line 55 of file timestamp.c.

References GWEN_NEW_OBJECT, GWEN_Timestamp_SetDateAndTime(), and NULL.

Referenced by GWEN_Timestamp_fromString(), and GWEN_Timestamp_fromStructTm().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_NowInGmTime()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_NowInGmTime ( void )

Definition at line 204 of file timestamp.c.

References GWEN_Timestamp_fromStructTm(), and NULL.

Here is the call graph for this function:

◆ GWEN_Timestamp_NowInLocalTime()

GWENHYWFAR_API GWEN_TIMESTAMP * GWEN_Timestamp_NowInLocalTime ( void )

Definition at line 194 of file timestamp.c.

References GWEN_Timestamp_fromStructTm(), and NULL.

Referenced by GWEN_MsgRequest_SetTimestamps().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_SetDate()

GWENHYWFAR_API void GWEN_Timestamp_SetDate ( GWEN_TIMESTAMP * tstamp,
int year,
int month,
int day )

Definition at line 225 of file timestamp.c.

References _setDate(), and _writeAsString().

Here is the call graph for this function:

◆ GWEN_Timestamp_SetDateAndTime()

GWENHYWFAR_API void GWEN_Timestamp_SetDateAndTime ( GWEN_TIMESTAMP * tstamp,
int year,
int month,
int day,
int hour,
int minute,
int second )

Definition at line 214 of file timestamp.c.

References _setDate(), _setTime(), and _writeAsString().

Referenced by GWEN_Timestamp_new().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_SetJulianDate()

GWENHYWFAR_API void GWEN_Timestamp_SetJulianDate ( GWEN_TIMESTAMP * tstamp,
int julian )

Definition at line 233 of file timestamp.c.

References _writeAsString().

Referenced by _setFromInt64().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWEN_Timestamp_SetTime()

GWENHYWFAR_API void GWEN_Timestamp_SetTime ( GWEN_TIMESTAMP * tstamp,
int hour,
int minute,
int second )

Definition at line 255 of file timestamp.c.

References _setTime(), and _writeAsString().

Here is the call graph for this function:

◆ GWEN_Timestamp_toDb()

GWENHYWFAR_API int GWEN_Timestamp_toDb ( const GWEN_TIMESTAMP * tstamp,
GWEN_DB_NODE * db )

Definition at line 455 of file timestamp.c.

References GWEN_DB_FLAGS_OVERWRITE_VARS, GWEN_DB_SetCharValue(), and GWEN_Timestamp_GetString().

Here is the call graph for this function:

◆ GWEN_Timestamp_toInt64()

GWENHYWFAR_API int64_t GWEN_Timestamp_toInt64 ( const GWEN_TIMESTAMP * tstamp)

Transform the given timestamp into a 64 bit value only to be used by GWEN_Timestamp_fromInt64(). No assumptions should be made about how this value is calculated.

Definition at line 97 of file timestamp.c.

Referenced by GWEN_Timestamp_AddSeconds(), and GWEN_Timestamp_Compare().

Here is the caller graph for this function:

◆ GWEN_Timestamp_toTimeT()

GWENHYWFAR_API time_t GWEN_Timestamp_toTimeT ( const GWEN_TIMESTAMP * tstamp)

Definition at line 167 of file timestamp.c.

References NULL.