24 #ifndef COIN_TIDBITS_H
25 #define COIN_TIDBITS_H
27 #include <Inventor/C/basic.h>
36 enum CoinEndiannessValues {
37 COIN_HOST_IS_UNKNOWNENDIAN = -1,
38 COIN_HOST_IS_LITTLEENDIAN = 0,
39 COIN_HOST_IS_BIGENDIAN = 1
42 COIN_DLL_API
int coin_host_get_endianness(
void);
44 COIN_DLL_API
int coin_snprintf(
char * dst,
unsigned int n,
const char * fmtstr, ...);
45 COIN_DLL_API
int coin_vsnprintf(
char * dst,
unsigned int n,
const char * fmtstr, va_list args);
47 COIN_DLL_API
const char * coin_getenv(
const char * name);
48 COIN_DLL_API SbBool coin_setenv(
const char * name,
const char * value,
int overwrite);
49 COIN_DLL_API
void coin_unsetenv(
const char * name);
51 COIN_DLL_API
int coin_strncasecmp(
const char * str1,
const char * str2,
int len);
53 COIN_DLL_API uint16_t coin_hton_uint16(uint16_t value);
54 COIN_DLL_API uint16_t coin_ntoh_uint16(uint16_t value);
55 COIN_DLL_API uint32_t coin_hton_uint32(uint32_t value);
56 COIN_DLL_API uint32_t coin_ntoh_uint32(uint32_t value);
57 COIN_DLL_API uint64_t coin_hton_uint64(uint64_t value);
58 COIN_DLL_API uint64_t coin_ntoh_uint64(uint64_t value);
60 COIN_DLL_API
void coin_hton_float_bytes(
float value,
char * result);
61 COIN_DLL_API
float coin_ntoh_float_bytes(
const char * value);
63 COIN_DLL_API
void coin_hton_double_bytes(
double value,
char * result);
64 COIN_DLL_API
double coin_ntoh_double_bytes(
const char * value);
66 COIN_DLL_API SbBool coin_isascii(
const int c);
67 COIN_DLL_API SbBool coin_isspace(
const char c);
69 COIN_DLL_API SbBool coin_is_power_of_two(uint32_t x);
70 COIN_DLL_API uint32_t coin_next_power_of_two(uint32_t x);
71 COIN_DLL_API uint32_t coin_geq_power_of_two(uint32_t x);
73 COIN_DLL_API
void coin_viewvolume_jitter(
int numpasses,
int curpass,
const int * vpsize,
float * jitter);
75 typedef void coin_atexit_f(
void);
76 COIN_DLL_API
void cc_coin_atexit(coin_atexit_f * fp);
79 COIN_DLL_API
void cc_coin_atexit_static_internal(coin_atexit_f * fp);
84 COIN_DLL_API
float coin_hton_float(
float value);
85 COIN_DLL_API
float coin_ntoh_float(
float value);
87 COIN_DLL_API
double coin_hton_double(
double value);
88 COIN_DLL_API
double coin_ntoh_double(
double value);