20 #ifndef __PJ_TYPES_H__ 21 #define __PJ_TYPES_H__ 61 #if defined(PJ_WIN64) && PJ_WIN64!=0 75 #if defined(PJ_NATIVE_STRING_IS_UNICODE) && PJ_NATIVE_STRING_IS_UNICODE!=0 83 #if defined(PJ_NATIVE_STRING_IS_UNICODE) && PJ_NATIVE_STRING_IS_UNICODE!=0 84 # define PJ_T(literal_str) L##literal_str 86 # define PJ_T(literal_str) literal_str 105 #if defined(PJ_HAS_INT64) && PJ_HAS_INT64!=0 137 #if defined(PJ_IS_LITTLE_ENDIAN) && PJ_IS_LITTLE_ENDIAN!=0 260 #if defined(PJ_WIN64) && PJ_WIN64!=0 281 #define PJ_ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0])) 286 #define PJ_MAX_OBJ_NAME 32 404 #define PJ_TIME_VAL_MSEC(t) ((t).sec * 1000 + (t).msec) 414 #define PJ_TIME_VAL_EQ(t1, t2) ((t1).sec==(t2).sec && (t1).msec==(t2).msec) 424 #define PJ_TIME_VAL_GT(t1, t2) ((t1).sec>(t2).sec || \ 425 ((t1).sec==(t2).sec && (t1).msec>(t2).msec)) 435 #define PJ_TIME_VAL_GTE(t1, t2) (PJ_TIME_VAL_GT(t1,t2) || \ 436 PJ_TIME_VAL_EQ(t1,t2)) 446 #define PJ_TIME_VAL_LT(t1, t2) (!(PJ_TIME_VAL_GTE(t1,t2))) 456 #define PJ_TIME_VAL_LTE(t1, t2) (!PJ_TIME_VAL_GT(t1, t2)) 466 #define PJ_TIME_VAL_ADD(t1, t2) do { \ 467 (t1).sec += (t2).sec; \ 468 (t1).msec += (t2).msec; \ 469 pj_time_val_normalize(&(t1)); \ 481 #define PJ_TIME_VAL_SUB(t1, t2) do { \ 482 (t1).sec -= (t2).sec; \ 483 (t1).msec -= (t2).msec; \ 484 pj_time_val_normalize(&(t1)); \ struct pj_timer_heap_t pj_timer_heap_t
Definition: types.h:221
pj_ssize_t slen
Definition: types.h:125
int hour
Definition: types.h:520
char * ptr
Definition: types.h:122
PJ_BEGIN_DECL typedef int pj_int32_t
Definition: types.h:40
char pj_char_t
Definition: types.h:78
int pj_bool_t
Definition: types.h:71
struct pj_thread_t pj_thread_t
Definition: types.h:236
pj_uint32_t index
Definition: types.h:181
struct pj_hash_table_t pj_hash_table_t
Definition: types.h:167
struct pj_atomic_t pj_atomic_t
Definition: types.h:226
int mon
Definition: types.h:506
struct pj_event_t pj_event_t
Definition: types.h:251
int pj_exception_id_t
Definition: types.h:276
int pj_status_t
Definition: types.h:68
short pj_int16_t
Definition: types.h:46
pj_hash_entry * entry
Definition: types.h:182
void pj_sockaddr_t
Definition: types.h:267
signed char pj_int8_t
Definition: types.h:52
int min
Definition: types.h:517
struct pj_pipe_t pj_pipe_t
Definition: types.h:254
struct pj_grp_lock_t pj_grp_lock_t
Definition: types.h:242
void * pj_oshandle_t
Definition: types.h:257
int wday
Definition: types.h:495
struct pj_ioqueue_t pj_ioqueue_t
Definition: types.h:210
unsigned int pj_uint32_t
Definition: types.h:43
struct pj_lock_t pj_lock_t
Definition: types.h:239
pj_ssize_t pj_off_t
Definition: types.h:108
void pj_time_val_normalize(pj_time_val *t)
#define PJ_END_DECL
Definition: config.h:1281
pj_constants_
Definition: types.h:90
pj_status_t pj_atexit(pj_exit_callback func)
struct pj_hash_entry pj_hash_entry
Definition: types.h:172
#define PJ_BEGIN_DECL
Definition: config.h:1280
long pj_sock_t
Definition: types.h:263
#define PJ_INLINE(type)
Definition: config.h:1174
long msec
Definition: types.h:385
int sec
Definition: types.h:514
unsigned int pj_color_t
Definition: types.h:273
pj_int16_t pj_swap16(pj_int16_t val16)
Definition: types.h:336
pj_uint32_t hi
Definition: types.h:141
long pj_ssize_t
Definition: types.h:64
void pj_list_type
Definition: types.h:157
struct pj_sem_t pj_sem_t
Definition: types.h:248
int day
Definition: types.h:503
int year
Definition: types.h:511
PJ_ATOMIC_VALUE_TYPE pj_atomic_value_t
Definition: types.h:231
unsigned char pj_uint8_t
Definition: types.h:55
int msec
Definition: types.h:523
pj_uint32_t lo
Definition: types.h:142
struct pj_ioqueue_key_t pj_ioqueue_key_t
Definition: types.h:216
long sec
Definition: types.h:382
pj_int32_t pj_swap32(pj_int32_t val32)
Definition: types.h:352
PJLIB Main configuration settings.
unsigned short pj_uint16_t
Definition: types.h:49
struct pj_mutex_t pj_mutex_t
Definition: types.h:245
pj_status_t pj_init(void)
size_t pj_size_t
Definition: types.h:58
void(* pj_exit_callback)(void)
Definition: types.h:315