Namespaces | Macros | Functions
GteBitHacks.h File Reference
#include <GTEngineDEF.h>
#include <cstdint>
Include dependency graph for GteBitHacks.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 gte
 

Macros

#define GTE_GET_HI_I64(v)   (int32_t)(((v) >> 32) & 0x00000000ffffffffLL)
 
#define GTE_GET_HI_U64(v)   (uint32_t)(((v) >> 32) & 0x00000000ffffffffULL)
 
#define GTE_GET_LO_I64(v)   (int32_t)((v) & 0x00000000ffffffffLL)
 
#define GTE_GET_LO_U64(v)   (uint32_t)((v) & 0x00000000ffffffffULL)
 
#define GTE_I64(v)   v##LL
 
#define GTE_MAKE_I64(hi, lo)   ((int64_t)(lo) | ((int64_t)(hi) << 32))
 
#define GTE_MAKE_U64(hi, lo)   ((uint64_t)(lo) | ((uint64_t)(hi) << 32))
 
#define GTE_SET_HI_I64(v, hi)   (((v) & 0x00000000ffffffffLL) | ((int64_t)(hi) << 32))
 
#define GTE_SET_HI_U64(v, hi)   (((v) & 0x00000000ffffffffULL) | ((uint64_t)(hi) << 32))
 
#define GTE_SET_LO_I64(v, lo)   (((v) & 0xffffffff00000000LL) | (int64_t)(lo))
 
#define GTE_SET_LO_U64(v, lo)   (((v) & 0xffffffff00000000ULL) | (uint64_t)(lo))
 
#define GTE_U64(v)   v##ULL
 

Functions

GTE_IMPEXP int32_t gte::GetLeadingBit (uint32_t value)
 
GTE_IMPEXP int32_t gte::GetLeadingBit (int32_t value)
 
GTE_IMPEXP int32_t gte::GetLeadingBit (uint64_t value)
 
GTE_IMPEXP int32_t gte::GetLeadingBit (int64_t value)
 
GTE_IMPEXP int32_t gte::GetTrailingBit (uint32_t value)
 
GTE_IMPEXP int32_t gte::GetTrailingBit (int32_t value)
 
GTE_IMPEXP int32_t gte::GetTrailingBit (uint64_t value)
 
GTE_IMPEXP int32_t gte::GetTrailingBit (int64_t value)
 
GTE_IMPEXP bool gte::IsPowerOfTwo (uint32_t value)
 
GTE_IMPEXP bool gte::IsPowerOfTwo (int32_t value)
 
GTE_IMPEXP uint32_t gte::Log2OfPowerOfTwo (uint32_t powerOfTwo)
 
GTE_IMPEXP int32_t gte::Log2OfPowerOfTwo (int32_t powerOfTwo)
 
GTE_IMPEXP uint32_t gte::RoundDownToPowerOfTwo (uint32_t value)
 
GTE_IMPEXP uint64_t gte::RoundUpToPowerOfTwo (uint32_t value)
 

Macro Definition Documentation

#define GTE_GET_HI_I64 (   v)    (int32_t)(((v) >> 32) & 0x00000000ffffffffLL)

Definition at line 17 of file GteBitHacks.h.

#define GTE_GET_HI_U64 (   v)    (uint32_t)(((v) >> 32) & 0x00000000ffffffffULL)

Definition at line 19 of file GteBitHacks.h.

#define GTE_GET_LO_I64 (   v)    (int32_t)((v) & 0x00000000ffffffffLL)

Definition at line 16 of file GteBitHacks.h.

#define GTE_GET_LO_U64 (   v)    (uint32_t)((v) & 0x00000000ffffffffULL)

Definition at line 18 of file GteBitHacks.h.

#define GTE_I64 (   v)    v##LL

Definition at line 14 of file GteBitHacks.h.

#define GTE_MAKE_I64 (   hi,
  lo 
)    ((int64_t)(lo) | ((int64_t)(hi) << 32))

Definition at line 22 of file GteBitHacks.h.

#define GTE_MAKE_U64 (   hi,
  lo 
)    ((uint64_t)(lo) | ((uint64_t)(hi) << 32))

Definition at line 25 of file GteBitHacks.h.

#define GTE_SET_HI_I64 (   v,
  hi 
)    (((v) & 0x00000000ffffffffLL) | ((int64_t)(hi) << 32))

Definition at line 21 of file GteBitHacks.h.

#define GTE_SET_HI_U64 (   v,
  hi 
)    (((v) & 0x00000000ffffffffULL) | ((uint64_t)(hi) << 32))

Definition at line 24 of file GteBitHacks.h.

#define GTE_SET_LO_I64 (   v,
  lo 
)    (((v) & 0xffffffff00000000LL) | (int64_t)(lo))

Definition at line 20 of file GteBitHacks.h.

#define GTE_SET_LO_U64 (   v,
  lo 
)    (((v) & 0xffffffff00000000ULL) | (uint64_t)(lo))

Definition at line 23 of file GteBitHacks.h.

#define GTE_U64 (   v)    v##ULL

Definition at line 15 of file GteBitHacks.h.



geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:00:02