Concord - C Discord API library
A Discord API wrapper library written in C
clock.h File Reference
#include <stdint.h>
#include <assert.h>
#include <time.h>
Include dependency graph for clock.h:

Go to the source code of this file.

Data Structures

struct  PsnipClockTimespec
 

Macros

#define psnip_int64_t   int64_t
 
#define psnip_uint64_t   uint64_t
 
#define psnip_int32_t   int32_t
 
#define psnip_uint32_t   uint32_t
 
#define PSNIP_CLOCK__COMPILER_ATTRIBUTES
 
#define PSNIP_CLOCK__FUNCTION   PSNIP_CLOCK__COMPILER_ATTRIBUTES static
 
#define PSNIP_CLOCK_METHOD_CLOCK_GETTIME   1
 
#define PSNIP_CLOCK_METHOD_TIME   2
 
#define PSNIP_CLOCK_METHOD_GETTIMEOFDAY   3
 
#define PSNIP_CLOCK_METHOD_QUERYPERFORMANCECOUNTER   4
 
#define PSNIP_CLOCK_METHOD_MACH_ABSOLUTE_TIME   5
 
#define PSNIP_CLOCK_METHOD_CLOCK   6
 
#define PSNIP_CLOCK_METHOD_GETPROCESSTIMES   7
 
#define PSNIP_CLOCK_METHOD_GETRUSAGE   8
 
#define PSNIP_CLOCK_METHOD_GETSYSTEMTIMEPRECISEASFILETIME   9
 
#define PSNIP_CLOCK_METHOD_GETTICKCOUNT64   10
 
#define PSNIP_CLOCK_UNREACHABLE()   assert(0)
 
#define PSNIP_CLOCK_WALL_METHOD   PSNIP_CLOCK_METHOD_TIME
 
#define PSNIP_CLOCK_CPU_METHOD   PSNIP_CLOCK_METHOD_CLOCK
 
#define PSNIP_CLOCK_NSEC_PER_SEC   ((psnip_uint32_t) (1000000000ULL))
 

Enumerations

enum  PsnipClockType { PSNIP_CLOCK_TYPE_WALL = 1 , PSNIP_CLOCK_TYPE_CPU = 2 , PSNIP_CLOCK_TYPE_MONOTONIC = 3 }
 

Macro Definition Documentation

◆ psnip_int64_t

#define psnip_int64_t   int64_t

◆ psnip_uint64_t

#define psnip_uint64_t   uint64_t

◆ psnip_int32_t

#define psnip_int32_t   int32_t

◆ psnip_uint32_t

#define psnip_uint32_t   uint32_t

◆ PSNIP_CLOCK__COMPILER_ATTRIBUTES

#define PSNIP_CLOCK__COMPILER_ATTRIBUTES

◆ PSNIP_CLOCK__FUNCTION

#define PSNIP_CLOCK__FUNCTION   PSNIP_CLOCK__COMPILER_ATTRIBUTES static

◆ PSNIP_CLOCK_METHOD_CLOCK_GETTIME

#define PSNIP_CLOCK_METHOD_CLOCK_GETTIME   1

◆ PSNIP_CLOCK_METHOD_TIME

#define PSNIP_CLOCK_METHOD_TIME   2

◆ PSNIP_CLOCK_METHOD_GETTIMEOFDAY

#define PSNIP_CLOCK_METHOD_GETTIMEOFDAY   3

◆ PSNIP_CLOCK_METHOD_QUERYPERFORMANCECOUNTER

#define PSNIP_CLOCK_METHOD_QUERYPERFORMANCECOUNTER   4

◆ PSNIP_CLOCK_METHOD_MACH_ABSOLUTE_TIME

#define PSNIP_CLOCK_METHOD_MACH_ABSOLUTE_TIME   5

◆ PSNIP_CLOCK_METHOD_CLOCK

#define PSNIP_CLOCK_METHOD_CLOCK   6

◆ PSNIP_CLOCK_METHOD_GETPROCESSTIMES

#define PSNIP_CLOCK_METHOD_GETPROCESSTIMES   7

◆ PSNIP_CLOCK_METHOD_GETRUSAGE

#define PSNIP_CLOCK_METHOD_GETRUSAGE   8

◆ PSNIP_CLOCK_METHOD_GETSYSTEMTIMEPRECISEASFILETIME

#define PSNIP_CLOCK_METHOD_GETSYSTEMTIMEPRECISEASFILETIME   9

◆ PSNIP_CLOCK_METHOD_GETTICKCOUNT64

#define PSNIP_CLOCK_METHOD_GETTICKCOUNT64   10

◆ PSNIP_CLOCK_UNREACHABLE

#define PSNIP_CLOCK_UNREACHABLE ( )    assert(0)

◆ PSNIP_CLOCK_WALL_METHOD

#define PSNIP_CLOCK_WALL_METHOD   PSNIP_CLOCK_METHOD_TIME

◆ PSNIP_CLOCK_CPU_METHOD

#define PSNIP_CLOCK_CPU_METHOD   PSNIP_CLOCK_METHOD_CLOCK

◆ PSNIP_CLOCK_NSEC_PER_SEC

#define PSNIP_CLOCK_NSEC_PER_SEC   ((psnip_uint32_t) (1000000000ULL))

Enumeration Type Documentation

◆ PsnipClockType

Enumerator
PSNIP_CLOCK_TYPE_WALL 
PSNIP_CLOCK_TYPE_CPU 
PSNIP_CLOCK_TYPE_MONOTONIC