FARGOS/VISTA Object Management Environment Core  ..
FARGOS/VISTA Object Management Environment Core Table of Contents
get_time.h
Go to the documentation of this file.
1 #ifndef _GET_TIME_H_
2 #define _GET_TIME_H_ "$Id: get_time.h 315 2020-03-26 16:17:02Z geoff $"
4 
6 /* Copyright (C) 2010 - 2019 FARGOS Development, LLC */
7 
8 #include <stdint.h>
9 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
25  uint64_t time_sec; /* 64-bits for all-platform portability */
26  uint64_t time_nanosec;
27 };
28 
31  uint16_t year;
32  unsigned char month;
33  unsigned char day;
34 };
35 
38  unsigned char hour;
39  unsigned char min;
40  unsigned char sec;
41  unsigned char _fill1;
42 };
43 
44 #ifdef __cplusplus
45 #define _GCT_DEFAULT_ARG = 0
46 #else
47 #define _GCT_DEFAULT_ARG
48 #endif
49 
60  struct TimeWithNanoseconds *nowTime _GCT_DEFAULT_ARG ,
61  bool force _GCT_DEFAULT_ARG );
62 
71 const struct TimeAsDayAndYear *getTodaysDate(struct TimeAsHourMinSec *nowTimeFields _GCT_DEFAULT_ARG );
72 
73 #ifdef __cplusplus
74 #undef _GCT_DEFAULT_ARG
75 #endif
76 
77 #ifdef __cplusplus
78 }; /* close extern "C" scope */
79 #endif
80 
82 #endif
83 /* vim: set expandtab shiftwidth=4 tabstop=4: */
clock_gettime_via_tick
int clock_gettime_via_tick(struct timespec *result, bool force) OME_ALWAYS_INLINE OME_ALWAYS_OPTIMIZE("-O3")
Definition: tick_time.h:290
NUMBERS_AND_STRINGS_OR_ANY
#define NUMBERS_AND_STRINGS_OR_ANY
Definition: generateOMEtypesOps.cpp:37
OME_NLM
@ OME_NLM
Definition: OMEmanifests.h:90
hdrFile
std::ofstream hdrFile
Definition: generateOMEtypesOps.cpp:69
OME_FLOAT
@ OME_FLOAT
Definition: OMEmanifests.h:82
get_time.h
Time acquisition routines.
OME_POINTER
@ OME_POINTER
Definition: OMEmanifests.h:92
TimeAsDayAndYear::year
uint16_t year
Definition: get_time.h:31
NATIVE_NUMBERS_AND_SETS_OR_ANY
#define NATIVE_NUMBERS_AND_SETS_OR_ANY
Definition: generateOMEtypesOps.cpp:47
OME_UINT16
@ OME_UINT16
Definition: OMEmanifests.h:98
onlyIntegerTypes
struct legalOperandTypes onlyIntegerTypes[]
Definition: generateOMEtypesOps.cpp:113
getCurrentTime
const struct TimeWithNanoseconds * getCurrentTime(struct TimeWithNanoseconds *saveTo, bool forceUpdate)
Get the current time.
Definition: get_time.cpp:20
TimeAsDayAndYear::month
unsigned char month
Definition: get_time.h:32
NUMBERS_AND_SETS_OR_ANY
#define NUMBERS_AND_SETS_OR_ANY
Definition: generateOMEtypesOps.cpp:45
ALL_NATIVE_NUMBERS_OR_ANY
#define ALL_NATIVE_NUMBERS_OR_ANY
Definition: generateOMEtypesOps.cpp:25
NUMBERS_STRINGS_SETS_OR_ANY
#define NUMBERS_STRINGS_SETS_OR_ANY
Definition: generateOMEtypesOps.cpp:53
OME_DOUBLE
@ OME_DOUBLE
Definition: OMEmanifests.h:83
isLegalFunction
uint32_t isLegalFunction(const char *opText, uint32_t leftType, uint32_t rightType)
Definition: generateOMEtypesOps.cpp:289
LEFT_VAR
const char * LEFT_VAR(const char *leftArgName, const char *altName)
Definition: generateOMEtypesOps.cpp:568
OME_UINT32
@ OME_UINT32
Definition: OMEmanifests.h:96
main
int main(int argc, const char *argv[])
Definition: generateOMEtypesOps.cpp:1014
EVERYTHING
#define EVERYTHING
Definition: generateOMEtypesOps.cpp:63
makeVarName
const char * makeVarName(char *bfr, bool isInstanceVar, bool isOMEtype, const char *baseName, const char *qualifier, const char *suffix, bool isExtendedType=false)
Definition: generateOMEtypesOps.cpp:553
doBinaryOp
void doBinaryOp(const opDescription *opDesc, const char *resultType, typeDescription *leftArgType, typeDescription *rightArgType, bool doMemberFunction)
Definition: generateOMEtypesOps.cpp:573
TimeWithNanoseconds
Structure for representing time as relative seconds and nanoseconds.
Definition: get_time.h:24
doRelativeOp
void doRelativeOp(const opDescription *opDesc, const char *resultType)
Definition: generateOMEtypesOps.cpp:918
IS_OMETYPE
#define IS_OMETYPE(n)
Definition: generateOMEtypesOps.cpp:65
INTEGERS_AND_SETS_OR_ANY
#define INTEGERS_AND_SETS_OR_ANY
Definition: generateOMEtypesOps.cpp:59
outputCompareOp
void outputCompareOp(const opDescription *opDesc, typeDescription *leftType, typeDescription *rightType)
Definition: generateOMEtypesOps.cpp:549
plusTypes
struct legalOperandTypes plusTypes[]
Definition: generateOMEtypesOps.cpp:123
isPermittedOperand
uint32_t isPermittedOperand(const opDescription *opDesc, const typeDescription *leftTypeDesc, const typeDescription *rightTypeDesc)
Definition: generateOMEtypesOps.cpp:423
ALL_FLOATS
#define ALL_FLOATS
Definition: generateOMEtypesOps.cpp:21
TimeWithNanoseconds::time_nanosec
uint64_t time_nanosec
Definition: get_time.h:26
srcID
const char srcID[]
Definition: catSym.c:17
OME_STRING
@ OME_STRING
Definition: OMEmanifests.h:85
TimeAsHourMinSec
Structure for representing time of day.
Definition: get_time.h:37
TimeAsDayAndYear::day
unsigned char day
Definition: get_time.h:33
IS_NATIVE_TYPE
#define IS_NATIVE_TYPE(n)
Definition: generateOMEtypesOps.cpp:67
getTodaysDate
const struct TimeAsDayAndYear * getTodaysDate(struct TimeAsHourMinSec *nowTimeFields)
Get today's date.
Definition: get_time.cpp:33
logicalBitwiseTypes
struct legalOperandTypes logicalBitwiseTypes[]
Definition: generateOMEtypesOps.cpp:138
unaryMathOperatorList
struct opDescription unaryMathOperatorList[]
Definition: generateOMEtypesOps.cpp:220
findPermittedTypes
uint32_t findPermittedTypes(const legalOperandTypes *t, const uint32_t findType)
Definition: generateOMEtypesOps.cpp:413
binaryMathOperatorList
struct opDescription binaryMathOperatorList[]
Definition: generateOMEtypesOps.cpp:199
OME_NIL
@ OME_NIL
Definition: OMEmanifests.h:78
TYPE_BIT
#define TYPE_BIT(n)
Definition: generateOMEtypesOps.cpp:9
relativeOperatorList
struct opDescription relativeOperatorList[]
Definition: generateOMEtypesOps.cpp:181
setTypes
struct legalOperandTypes setTypes[]
Definition: generateOMEtypesOps.cpp:131
OME_OID
@ OME_OID
Definition: OMEmanifests.h:84
srcFile
std::ofstream srcFile
Definition: generateOMEtypesOps.cpp:70
allSameContainerTypes
struct legalOperandTypes allSameContainerTypes[]
Definition: generateOMEtypesOps.cpp:144
ALL_NATIVE_NUMBERS
#define ALL_NATIVE_NUMBERS
Definition: generateOMEtypesOps.cpp:23
numericTypes
struct legalOperandTypes numericTypes[]
Definition: generateOMEtypesOps.cpp:109
OME_UINT64
@ OME_UINT64
Definition: OMEmanifests.h:97
promoteIfNeeded
promotionResult promoteIfNeeded(const opDescription *opDesc, const typeDescription *left, const typeDescription *right, bool leftIsOMEtype, bool rightIsOMEtype)
Definition: generateOMEtypesOps.cpp:437
ALL_NUMERICS
#define ALL_NUMERICS
Definition: generateOMEtypesOps.cpp:27
NATIVE_NUMBERS_STRINGS_SETS_OR_ANY
#define NATIVE_NUMBERS_STRINGS_SETS_OR_ANY
Definition: generateOMEtypesOps.cpp:55
ALL_INTEGERS_OR_ANY
#define ALL_INTEGERS_OR_ANY
Definition: generateOMEtypesOps.cpp:19
TimeAsHourMinSec::sec
unsigned char sec
Definition: get_time.h:40
_GCT_DEFAULT_ARG
#define _GCT_DEFAULT_ARG
Definition: get_time.h:45
OME_USED
const char srcID[] OME_USED
Definition: tick_time.cpp:24
doUnaryOp
void doUnaryOp(const opDescription *opDesc)
Definition: generateOMEtypesOps.cpp:959
emitUtilityRoutines
void emitUtilityRoutines()
Definition: generateOMEtypesOps.cpp:991
TimeWithNanoseconds::time_sec
uint64_t time_sec
Definition: get_time.h:25
OME_SET
@ OME_SET
Definition: OMEmanifests.h:89
TimeAsHourMinSec::_fill1
unsigned char _fill1
Definition: get_time.h:41
OMEmanifests.h
OME constants and typedefs.
OME_UINT8
@ OME_UINT8
Definition: OMEmanifests.h:99
TimeAsHourMinSec::min
unsigned char min
Definition: get_time.h:39
promotedType
const char * promotedType(const struct opDescription *op, const struct typeDescription *leftType, const struct typeDescription *rightType)
Definition: generateOMEtypesOps.cpp:244
ALL_NUMERICS_OR_ANY
#define ALL_NUMERICS_OR_ANY
Definition: generateOMEtypesOps.cpp:29
OME_FIXED
@ OME_FIXED
Definition: OMEmanifests.h:91
tick_time.h
FARGOS CPU tick routines.
ALL_INTEGERS
#define ALL_INTEGERS
Definition: generateOMEtypesOps.cpp:17
typeList
struct typeDescription typeList[]
Definition: generateOMEtypesOps.cpp:157
OME_ANY
@ OME_ANY
Definition: OMEmanifests.h:93
numberAndStringTypes
struct legalOperandTypes numberAndStringTypes[]
Definition: generateOMEtypesOps.cpp:117
OME_ARRAY
@ OME_ARRAY
Definition: OMEmanifests.h:86
TimeAsHourMinSec::hour
unsigned char hour
Definition: get_time.h:38
TimeAsDayAndYear
Structure for representing day-of-the-year.
Definition: get_time.h:30
OME_ASSOC
@ OME_ASSOC
Definition: OMEmanifests.h:87
OME_INT32
@ OME_INT32
Definition: OMEmanifests.h:79
OME_INT64
@ OME_INT64
Definition: OMEmanifests.h:81
Generated: Fri Jul 31 2020 18:19:14
Support Information