Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
OPC_IceHook.h File Reference
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <string.h>
#include <float.h>
#include <math.h>
#include "Ice/IcePreprocessor.h"
#include "Ice/IceTypes.h"
#include "Ice/IceFPU.h"
#include "Ice/IceMemoryMacros.h"
#include "Ice/IceUtils.h"
#include "Ice/IceContainer.h"
#include "Ice/IcePairs.h"
#include "Ice/IceRevisitedRadix.h"
#include "Ice/IceRandom.h"
#include "Ice/IceAxes.h"
#include "Ice/IcePoint.h"
#include "Ice/IceHPoint.h"
#include "Ice/IceMatrix3x3.h"
#include "Ice/IceMatrix4x4.h"
#include "Ice/IcePlane.h"
#include "Ice/IceRay.h"
#include "Ice/IceIndexedTriangle.h"
#include "Ice/IceAABB.h"
#include "Ice/IceOBB.h"
#include "Ice/IceBoundingSphere.h"
Include dependency graph for OPC_IceHook.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  IceMaths::AABB
 
class  IceMaths::Axes
 
class  IceCore::BasicRandom
 
class  IceCore::Container
 
class  IceMaths::HPoint
 
class  IceMaths::IndexedTriangle
 
class  IceMaths::Matrix3x3
 
class  IceMaths::Matrix4x4
 
class  IceMaths::OBB
 
struct  IceCore::Pair
 A generic couple structure. More...
 
class  IceCore::Pairs
 
class  IceMaths::Plane
 
class  IceMaths::Point
 
class  IceCore::RadixSort
 
class  IceMaths::Ray
 
class  IceMaths::Sphere
 

Namespaces

 IceCore
 
 IceMaths
 

Macros

#define ASSERT(exp)   {}
 
#define EC_OUTOFMEMORY   "Out of memory"
 
#define FALSE   0
 
#define ICE_COMPILE_TIME_ASSERT(exp)   extern char ICE_Dummy[ (exp) ? 1 : -1 ]
 
#define ICE_DONT_CHECK_COMPILER_OPTIONS
 
#define ICECORE_API   OPCODE_API
 
#define ICEMATHS_API   OPCODE_API
 
#define Log   {}
 
#define SetIceError(a, b)   false
 
#define TRUE   1
 

Typedefs

typedef int BOOL
 
typedef int IceMaths::CubeIndex
 

Enumerations

enum  IceMaths::AABBType { IceMaths::AABB_RENDER = 0, IceMaths::AABB_UPDATE = 1, IceMaths::AABB_FORCE_DWORD = 0x7fffffff }
 
enum  IceMaths::AxisOrder {
  IceMaths::AXES_XYZ = (_X)|(_Y<<2)|(_Z<<4), IceMaths::AXES_XZY = (_X)|(_Z<<2)|(_Y<<4), IceMaths::AXES_YXZ = (_Y)|(_X<<2)|(_Z<<4), IceMaths::AXES_YZX = (_Y)|(_Z<<2)|(_X<<4),
  IceMaths::AXES_ZXY = (_Z)|(_X<<2)|(_Y<<4), IceMaths::AXES_ZYX = (_Z)|(_Y<<2)|(_X<<4), IceMaths::AXES_FORCE_DWORD = 0x7fffffff
}
 
enum  IceMaths::BSphereMethod { IceMaths::BS_NONE, IceMaths::BS_GEMS, IceMaths::BS_MINIBALL, IceMaths::BS_FORCE_DWORD = 0x7fffffff }
 
enum  IceCore::FindMode { IceCore::FIND_CLAMP, IceCore::FIND_WRAP, IceCore::FIND_FORCE_DWORD = 0x7fffffff }
 
enum  IceMaths::PointComponent {
  IceMaths::_X = 0, IceMaths::_Y = 1, IceMaths::_Z = 2, IceMaths::_W = 3,
  IceMaths::_FORCE_DWORD = 0x7fffffff
}
 
enum  IceCore::RadixHint { IceCore::RADIX_SIGNED, IceCore::RADIX_UNSIGNED, IceCore::RADIX_FORCE_DWORD = 0x7fffffff }
 

Functions

inline_ void IceCore::_prefetch (void const *ptr)
 
inline_ udword IceCore::abs_ (sdword x)
 Alternative min function. More...
 
FUNCTION ICECORE_API udword IceCore::Alignment (udword address)
 
inline_ int IceCore::ClampToInt16 (int x)
 
inline_ void IceCore::Compute2DCoords (udword &u, udword &v, udword i, udword nbu)
 
inline_ void IceCore::Compute3DCoords (udword &u, udword &v, udword &w, udword i, udword nbu, udword nbu_nbv)
 
inline_ void IceMaths::ComputeAABB (AABB &aabb, const Point *list, udword nb_pts)
 
inline_ void IceMaths::ComputeLocalDirection (Point &local_dir, const Point &world_dir, const Matrix4x4 &world)
 
inline_ void IceMaths::ComputeLocalPoint (Point &local_pt, const Point &world_pt, const Matrix4x4 &world)
 
inline_ void IceMaths::ComputeLocalRay (Ray &local_ray, const Ray &world_ray, const Matrix4x4 &world)
 
inline_ void IceMaths::ComputeMinMax (const Point &p, Point &min, Point &max)
 
inline_ void IceMaths::ComputeReflexionVector (Point &reflected, const Point &incoming_dir, const Point &outward_normal)
 
inline_ void IceMaths::ComputeReflexionVector (Point &reflected, const Point &source, const Point &impact, const Point &normal)
 
inline_ udword IceCore::CountBits (udword n)
 Count the number of '1' bits in a 32 bit word (from Steve Baker's Cute Code Collection) More...
 
inline_ udword IceCore::CountBits2 (udword bits)
 Even faster? More...
 
inline_ void IceMaths::DecomposeVector (Point &normal_compo, Point &tangent_compo, const Point &outward_dir, const Point &outward_normal)
 
inline_ float IceCore::FeedbackFilter (float val, float &memory, float sharpness)
 
ICECORE_API udword IceCore::GetRandomIndex (udword max_index)
 Returns a random index so that 0<= index < max_index. More...
 
inline_ BOOL IceCore::HasNullByte (udword x)
 
ICEMATHS_API void IceMaths::InvertPRMatrix (Matrix4x4 &dest, const Matrix4x4 &src)
 
inline_ bool IceCore::IsPowerOfTwo (udword n)
 Test to see if a number is an exact power of two (from Steve Baker's Cute Code Collection) More...
 
inline_ char IceCore::LittleEndian ()
 Alternative abs function. More...
 
inline_ udword IceCore::LowestOneBit (udword w)
 
inline_ sdword IceCore::min_ (sdword a, sdword b)
 
inline_ udword IceCore::msb32 (udword x)
 
inline_ udword IceCore::nlpo2 (udword x)
 
FUNCTION ICEMATHS_API void IceMaths::Normalize1 (Point &a)
 
FUNCTION ICEMATHS_API void IceMaths::Normalize2 (Point &a)
 
FUNCTION ICECORE_API udword IceCore::Rand ()
 
inline_ void IceCore::ReverseBits (udword &n)
 
inline_ void IceCore::SetLeastNBits (udword &x, udword n)
 Set the least significant N bits in a word. (from Steve Baker's Cute Code Collection) More...
 
inline_ void IceCore::SpreadBits (udword &n)
 
FUNCTION ICECORE_API void IceCore::SRand (udword seed)
 
*inline_ void IceCore::Swap (udword &x, udword &y)
 
template<class Type >
inline_ Type IceCore::TClamp (const Type &x, const Type &lo, const Type &hi)
 
inline_ void IceMaths::TransformPlane (Plane &transformed, const Plane &plane, const Matrix4x4 &transform)
 
inline_ void IceMaths::TransformPlane (Plane &plane, const Matrix4x4 &transform)
 
inline_ void IceMaths::TransformPoint3x3 (Point &dest, const Point &source, const Matrix4x4 &rot)
 Quickly rotates a vector, using the 3x3 part of a 4x4 matrix. More...
 
inline_ void IceMaths::TransformPoint4x3 (Point &dest, const Point &source, const Matrix4x4 &rot)
 Quickly rotates & translates a vector, using the 4x3 part of a 4x4 matrix. More...
 
template<class Type >
inline_ void IceCore::TSort (Type &a, Type &b)
 
template<class Type >
inline_ void IceCore::TSort (Type &a, Type &b, Type &c)
 
template<class Type >
inline_ void IceCore::TSwap (Type &a, Type &b)
 
inline_ float IceCore::UnitRandomFloat ()
 Returns a unit random floating-point value. More...
 
inline_ void IceCore::ZeroLeastSetBit (udword &n)
 Zero the least significant '1' bit in a word. (from Steve Baker's Cute Code Collection) More...
 

Variables

const float IceMaths::EPSILON2 = 1.0e-20f
 
IceCore::x = y
 
IceCore::y = x
 

Macro Definition Documentation

#define ASSERT (   exp)    {}

Definition at line 24 of file OPC_IceHook.h.

#define EC_OUTOFMEMORY   "Out of memory"

Definition at line 30 of file OPC_IceHook.h.

#define FALSE   0

Definition at line 9 of file OPC_IceHook.h.

#define ICE_COMPILE_TIME_ASSERT (   exp)    extern char ICE_Dummy[ (exp) ? 1 : -1 ]

Definition at line 26 of file OPC_IceHook.h.

#define ICE_DONT_CHECK_COMPILER_OPTIONS

Definition at line 4 of file OPC_IceHook.h.

#define ICECORE_API   OPCODE_API

Definition at line 35 of file OPC_IceHook.h.

#define ICEMATHS_API   OPCODE_API

Definition at line 51 of file OPC_IceHook.h.

#define Log   {}

Definition at line 28 of file OPC_IceHook.h.

#define SetIceError (   a,
  b 
)    false

Definition at line 29 of file OPC_IceHook.h.

#define TRUE   1

Definition at line 13 of file OPC_IceHook.h.

Typedef Documentation

typedef int BOOL

Definition at line 7 of file OPC_IceHook.h.



openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Sat May 8 2021 02:42:42