gwenhywfar  5.4.1
Typedefs | Functions
gwendate.h File Reference
#include <gwenhywfar/gwenhywfarapi.h>
#include <gwenhywfar/types.h>
#include <gwenhywfar/buffer.h>
#include <gwenhywfar/gwentime.h>
#include <time.h>
Include dependency graph for gwendate.h:

Go to the source code of this file.

Typedefs

typedef struct GWEN_DATE GWEN_DATE
 

Functions

GWENHYWFAR_API void GWEN_Date_AddDays (GWEN_DATE *gd, int days)
 
GWENHYWFAR_API int GWEN_Date_Compare (const GWEN_DATE *gd1, const GWEN_DATE *gd0)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_CurrentDate (void)
 
GWENHYWFAR_API int GWEN_Date_DaysInMonth (const GWEN_DATE *gd)
 
GWENHYWFAR_API int GWEN_Date_DaysInYear (const GWEN_DATE *gd)
 
GWENHYWFAR_API int GWEN_Date_Diff (const GWEN_DATE *gd1, const GWEN_DATE *gd0)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_dup (const GWEN_DATE *ogd)
 
GWENHYWFAR_API void GWEN_Date_free (GWEN_DATE *gd)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromDb (GWEN_DB_NODE *db)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromGmTime (time_t t)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromGregorian (int y, int m, int d)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromJulian (int julian)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromLocalTime (time_t t)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromString (const char *s)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromStringWithTemplate (const char *s, const char *tmpl)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_fromTime (const GWEN_TIME *ti)
 
GWENHYWFAR_API int GWEN_Date_GetDay (const GWEN_DATE *gd)
 
GWENHYWFAR_API int GWEN_Date_GetJulian (const GWEN_DATE *gd)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastHalfYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastHalfYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastMonthEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastMonthStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastQuarterYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastQuarterYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetLastYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API int GWEN_Date_GetMonth (const GWEN_DATE *gd)
 
GWENHYWFAR_API const char * GWEN_Date_GetString (const GWEN_DATE *gd)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisHalfYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisHalfYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisMonthEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisMonthStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisQuarterYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisQuarterYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisYearEnd (const GWEN_DATE *dt)
 
GWENHYWFAR_API GWEN_DATEGWEN_Date_GetThisYearStart (const GWEN_DATE *dt)
 
GWENHYWFAR_API int GWEN_Date_GetYear (const GWEN_DATE *gd)
 
GWENHYWFAR_API int GWEN_Date_IsLeapYear (int y)
 
GWENHYWFAR_API void GWEN_Date_SubDays (GWEN_DATE *gd, int days)
 
GWENHYWFAR_API int GWEN_Date_toDb (const GWEN_DATE *dt, GWEN_DB_NODE *db)
 
GWENHYWFAR_API time_t GWEN_Date_toLocalTime (const GWEN_DATE *gd)
 
GWENHYWFAR_API int GWEN_Date_toStringWithTemplate (const GWEN_DATE *t, const char *tmpl, GWEN_BUFFER *buf)
 
GWENHYWFAR_API int GWEN_Date_WeekDay (const GWEN_DATE *gd)
 

Typedef Documentation

◆ GWEN_DATE

typedef struct GWEN_DATE GWEN_DATE

Definition at line 34 of file gwendate.h.

Function Documentation

◆ GWEN_Date_AddDays()

GWENHYWFAR_API void GWEN_Date_AddDays ( GWEN_DATE gd,
int  days 
)

Add days to the given date.

Definition at line 103 of file gwendate.c.

References GWEN_Date_setJulian().

Here is the call graph for this function:

◆ GWEN_Date_Compare()

GWENHYWFAR_API int GWEN_Date_Compare ( const GWEN_DATE gd1,
const GWEN_DATE gd0 
)

Definition at line 331 of file gwendate.c.

Referenced by test_date().

Here is the caller graph for this function:

◆ GWEN_Date_CurrentDate()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_CurrentDate ( void  )

Create a date from the current local date.

Definition at line 188 of file gwendate.c.

References GWEN_Date_fromLocalTime().

Referenced by test_date().

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

◆ GWEN_Date_DaysInMonth()

GWENHYWFAR_API int GWEN_Date_DaysInMonth ( const GWEN_DATE gd)

Definition at line 254 of file gwendate.c.

References daysInMonth.

◆ GWEN_Date_DaysInYear()

GWENHYWFAR_API int GWEN_Date_DaysInYear ( const GWEN_DATE gd)

Returns the distance between the given date and the begin of that year. E.g. if the given date is the 1st of January the result is 0.

Definition at line 267 of file gwendate.c.

References GWEN_Date_free(), and GWEN_Date_fromGregorian().

Here is the call graph for this function:

◆ GWEN_Date_Diff()

GWENHYWFAR_API int GWEN_Date_Diff ( const GWEN_DATE gd1,
const GWEN_DATE gd0 
)

Definition at line 351 of file gwendate.c.

◆ GWEN_Date_dup()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_dup ( const GWEN_DATE ogd)

Definition at line 198 of file gwendate.c.

References GWEN_NEW_OBJECT.

◆ GWEN_Date_free()

GWENHYWFAR_API void GWEN_Date_free ( GWEN_DATE gd)

◆ GWEN_Date_fromDb()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromDb ( GWEN_DB_NODE db)

Definition at line 710 of file gwendate.c.

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

Here is the call graph for this function:

◆ GWEN_Date_fromGmTime()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromGmTime ( time_t  t)

Definition at line 170 of file gwendate.c.

References GWEN_Date_fromGregorian(), and NULL.

Here is the call graph for this function:

◆ GWEN_Date_fromGregorian()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromGregorian ( int  y,
int  m,
int  d 
)

◆ GWEN_Date_fromJulian()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromJulian ( int  julian)

Create a date from the julian calender.

Parameters
juliandate in julian calender

Definition at line 117 of file gwendate.c.

References GWEN_Date_setJulian(), and GWEN_NEW_OBJECT.

Referenced by GWEN_Date_GetLastHalfYearEnd(), GWEN_Date_GetLastMonthEnd(), GWEN_Date_GetLastMonthStart(), GWEN_Date_GetLastQuarterYearEnd(), and GWEN_Date_GetLastYearEnd().

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

◆ GWEN_Date_fromLocalTime()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromLocalTime ( time_t  t)

Definition at line 128 of file gwendate.c.

References GWEN_Date_fromGregorian(), and NULL.

Referenced by GWEN_Date_CurrentDate(), and test_date().

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

◆ GWEN_Date_fromString()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromString ( const char *  s)

Definition at line 219 of file gwendate.c.

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

Referenced by _convertAndSetCharValue(), GWEN_Date_fromDb(), and GWEN_Date_fromTime().

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

◆ GWEN_Date_fromStringWithTemplate()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromStringWithTemplate ( const char *  s,
const char *  tmpl 
)

Definition at line 377 of file gwendate.c.

References DBG_DEBUG, DBG_ERROR, DBG_INFO, DBG_VERBOUS, GWEN_Date_fromGregorian(), GWEN_LOGDOMAIN, and NULL.

Referenced by _convertAndSetCharValue().

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

◆ GWEN_Date_fromTime()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_fromTime ( const GWEN_TIME ti)

Definition at line 361 of file gwendate.c.

References GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_Date_fromString(), and GWEN_Time_toString().

Here is the call graph for this function:

◆ GWEN_Date_GetDay()

GWENHYWFAR_API int GWEN_Date_GetDay ( const GWEN_DATE gd)

Definition at line 299 of file gwendate.c.

◆ GWEN_Date_GetJulian()

GWENHYWFAR_API int GWEN_Date_GetJulian ( const GWEN_DATE gd)

◆ GWEN_Date_GetLastHalfYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastHalfYearEnd ( const GWEN_DATE dt)

Definition at line 930 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_fromJulian(), GWEN_Date_GetJulian(), and GWEN_Date_GetThisHalfYearStart().

Referenced by GWEN_Date_GetLastHalfYearStart().

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

◆ GWEN_Date_GetLastHalfYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastHalfYearStart ( const GWEN_DATE dt)

Definition at line 917 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_GetLastHalfYearEnd(), and GWEN_Date_GetThisHalfYearStart().

Here is the call graph for this function:

◆ GWEN_Date_GetLastMonthEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastMonthEnd ( const GWEN_DATE dt)

Definition at line 878 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_fromGregorian(), GWEN_Date_fromJulian(), GWEN_Date_GetJulian(), GWEN_Date_GetMonth(), and GWEN_Date_GetYear().

Here is the call graph for this function:

◆ GWEN_Date_GetLastMonthStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastMonthStart ( const GWEN_DATE dt)

Definition at line 861 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_fromGregorian(), GWEN_Date_fromJulian(), GWEN_Date_GetJulian(), GWEN_Date_GetMonth(), and GWEN_Date_GetYear().

Here is the call graph for this function:

◆ GWEN_Date_GetLastQuarterYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastQuarterYearEnd ( const GWEN_DATE dt)

Definition at line 904 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_fromJulian(), GWEN_Date_GetJulian(), and GWEN_Date_GetThisQuarterYearStart().

Referenced by GWEN_Date_GetLastQuarterYearStart().

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

◆ GWEN_Date_GetLastQuarterYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastQuarterYearStart ( const GWEN_DATE dt)

Definition at line 891 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_GetLastQuarterYearEnd(), and GWEN_Date_GetThisQuarterYearStart().

Here is the call graph for this function:

◆ GWEN_Date_GetLastYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastYearEnd ( const GWEN_DATE dt)

Definition at line 956 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_fromJulian(), GWEN_Date_GetJulian(), and GWEN_Date_GetThisYearStart().

Referenced by GWEN_Date_GetLastYearStart().

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

◆ GWEN_Date_GetLastYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetLastYearStart ( const GWEN_DATE dt)

Definition at line 943 of file gwendate.c.

References GWEN_Date_free(), GWEN_Date_GetLastYearEnd(), and GWEN_Date_GetThisYearStart().

Here is the call graph for this function:

◆ GWEN_Date_GetMonth()

GWENHYWFAR_API int GWEN_Date_GetMonth ( const GWEN_DATE gd)

◆ GWEN_Date_GetString()

GWENHYWFAR_API const char* GWEN_Date_GetString ( const GWEN_DATE gd)

Definition at line 323 of file gwendate.c.

Referenced by _convertAndSetCharValue(), GWEN_Date_toDb(), and test_date().

Here is the caller graph for this function:

◆ GWEN_Date_GetThisHalfYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisHalfYearEnd ( const GWEN_DATE dt)

Definition at line 837 of file gwendate.c.

References GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), and GWEN_Date_GetYear().

Here is the call graph for this function:

◆ GWEN_Date_GetThisHalfYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisHalfYearStart ( const GWEN_DATE dt)

Definition at line 827 of file gwendate.c.

References GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), and GWEN_Date_GetYear().

Referenced by GWEN_Date_GetLastHalfYearEnd(), and GWEN_Date_GetLastHalfYearStart().

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

◆ GWEN_Date_GetThisMonthEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisMonthEnd ( const GWEN_DATE dt)

Definition at line 741 of file gwendate.c.

References DBG_ERROR, GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), GWEN_Date_GetYear(), GWEN_Date_IsLeapYear(), and GWEN_LOGDOMAIN.

Here is the call graph for this function:

◆ GWEN_Date_GetThisMonthStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisMonthStart ( const GWEN_DATE dt)

Definition at line 734 of file gwendate.c.

References GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), and GWEN_Date_GetYear().

Here is the call graph for this function:

◆ GWEN_Date_GetThisQuarterYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisQuarterYearEnd ( const GWEN_DATE dt)

Definition at line 803 of file gwendate.c.

References DBG_ERROR, GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), GWEN_Date_GetYear(), GWEN_LOGDOMAIN, and NULL.

Here is the call graph for this function:

◆ GWEN_Date_GetThisQuarterYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisQuarterYearStart ( const GWEN_DATE dt)

Definition at line 779 of file gwendate.c.

References DBG_ERROR, GWEN_Date_fromGregorian(), GWEN_Date_GetMonth(), GWEN_Date_GetYear(), GWEN_LOGDOMAIN, and NULL.

Referenced by GWEN_Date_GetLastQuarterYearEnd(), and GWEN_Date_GetLastQuarterYearStart().

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

◆ GWEN_Date_GetThisYearEnd()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisYearEnd ( const GWEN_DATE dt)

Definition at line 854 of file gwendate.c.

References GWEN_Date_fromGregorian(), and GWEN_Date_GetYear().

Here is the call graph for this function:

◆ GWEN_Date_GetThisYearStart()

GWENHYWFAR_API GWEN_DATE* GWEN_Date_GetThisYearStart ( const GWEN_DATE dt)

Definition at line 847 of file gwendate.c.

References GWEN_Date_fromGregorian(), and GWEN_Date_GetYear().

Referenced by GWEN_Date_GetLastYearEnd(), and GWEN_Date_GetLastYearStart().

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

◆ GWEN_Date_GetYear()

GWENHYWFAR_API int GWEN_Date_GetYear ( const GWEN_DATE gd)

◆ GWEN_Date_IsLeapYear()

GWENHYWFAR_API int GWEN_Date_IsLeapYear ( int  y)

Definition at line 246 of file gwendate.c.

Referenced by GWEN_Date_GetThisMonthEnd().

Here is the caller graph for this function:

◆ GWEN_Date_SubDays()

GWENHYWFAR_API void GWEN_Date_SubDays ( GWEN_DATE gd,
int  days 
)

Subtract days from the given date.

Definition at line 110 of file gwendate.c.

References GWEN_Date_setJulian().

Here is the call graph for this function:

◆ GWEN_Date_toDb()

GWENHYWFAR_API int GWEN_Date_toDb ( const GWEN_DATE dt,
GWEN_DB_NODE db 
)

Definition at line 698 of file gwendate.c.

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

Here is the call graph for this function:

◆ GWEN_Date_toLocalTime()

GWENHYWFAR_API time_t GWEN_Date_toLocalTime ( const GWEN_DATE gd)

Definition at line 145 of file gwendate.c.

Referenced by test_date().

Here is the caller graph for this function:

◆ GWEN_Date_toStringWithTemplate()

GWENHYWFAR_API int GWEN_Date_toStringWithTemplate ( const GWEN_DATE t,
const char *  tmpl,
GWEN_BUFFER buf 
)

Definition at line 656 of file gwendate.c.

References GWEN_Buffer_AppendByte(), GWEN_Buffer_AppendString(), GWEN_Date__fillTmplChars(), GWEN_Date__findTmplChar(), and GWEN_Date__sampleTmplChars().

Referenced by _convertAndSetCharValue().

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

◆ GWEN_Date_WeekDay()

GWENHYWFAR_API int GWEN_Date_WeekDay ( const GWEN_DATE gd)

Definition at line 315 of file gwendate.c.

Referenced by GWEN_Date__fillTmplChars().

Here is the caller graph for this function: