Share

AcGeContext

C++

struct AcGeContext {
  GE_DLLDATAEXIMP AcGeTol gTol;
  GE_DLLDATAEXIMP void (* gErrorFunc)();
  GE_DLLDATAEXIMP void (* gOrthoVector)(const AcGeVector3d&,AcGeVector3d&);
  GE_DLLDATAEXIMP void* (* gAllocMem)(size_t);
  GE_DLLDATAEXIMP void (* gFreeMem)(void*);
  GE_DLLDATAEXIMP void* (* gAllocMemNear)(size_t, AcGe::metaTypeIndex, const void*);
  GE_DLLDATAEXIMP void* (* gAllocMemNearVector)(size_t, AcGe::metaTypeIndex, unsigned int, const void*);
  GE_DLLDATAEXIMP void (* gSetExternalStore)(const void*);
  GE_DLLDATAEXIMP void (* gAssertFunc)(const ACHAR *condition, const ACHAR *filename, int lineNumber, const ACHAR *status);
};

File

gegbl.h

Members

Members Description
gTol Provides a "global" default tolerance object. This is an AcGeTol object that contains the default AcGeTol tolerance values (equalPoint and equalVector tolerances set to 1.e-10).
gErrorFunc This function pointer can be set to point to a function that can be used to handle errors. By default, this pointer points to a function that is empty (that is, does nothing more than return).
gOrthoVector This function pointer goes to a function that calculates a vector that is orthogonal to vec and sets orthoVec to the result.If the absolute values of the X and Y components are each less than 1/64, then: orthoVec.x is set to vec.z orthoVec.y is set to 0.0 orthoVec.z is set to -vec.xOtherwise: orthoVec.x is set to -vec.y orthoVec.y is set to vec.x orthoVec.z is set to 0.0
gAllocMem This function pointer points to a user-defined function for allocating memory. All new operations in gelib go through the function pointed to by gAllocMem. If an application is using a different memory manager than gelib, then this function pointer can be set to point to the application's own memory allocation function. This avoids problems that arise from having an application delete objects that were created by gelib using a different memory manager than the application.
gFreeMem This function pointer points to a user-defined function for freeing memory. All delete operations in gelib go through the function pointed to by gFreeMem.

Description

The AcGeContext structure provides a namespace for a tolerance data value and a few functions that are used throughout the AcGe library.

Previous Declaration

struct AcGeContext {

AcGeTol gTol;

void (* gErrorFunc)();

void (* gOrthoVector)(const AcGeVector3d&,AcGeVector3d&);

void* (* gAllocMem)(size_t);

void* (* gAllocMemLeak)(size_t, const char *, int);

void (* gFreeMem)(void*);

void* (* gAllocMemNear)(size_t, AcGe::metaTypeIndex, const void*);

void* (* gAllocMemNearVector)(size_t, AcGe::metaTypeIndex, unsigned int, const void*);

void (* gSetExternalStore)(const void*);

void (* gAssertFunc)(const ACHAR *condition, const ACHAR *filename, int lineNumber, const ACHAR *status);

};

Was this information helpful?