Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

OOFILE macros
[Application Authoring]


Detailed Description

Collection of all important macro definitions regardless of package.

Now broken into subgroups to make it easier to distinguish the use of the macros.

Note:
unlike most items, Doxygen only allows macros to be in a single group so all you can do with macro definitions is use \ingroup oofMacros to include items in this group


Modules

Database Declarations
 Used to make it simpler to write persistent table declarations by including common methods and defining relationship field types.

Compiler features we expect or use
 Many of these can be set, especially with Unix compilers, to tell OOFILE what features are available.

Exception Handling enabling as option
 Exception handling is optional in OOFILE and you can build without exceptions defined.

Platform specifiers.
 As discussed on pagePlatforms and defined in oofplat.h.

Report Writer feature availablity
 Some features are optional to avoid having to link in XML processing or control what toolbars are used for report previews.

Reliance on C++ Standard Library Features
 Affect how OOFILE is built with regards to the standard libraries, which can be important on legacy systems or if using parts of OOFILE like oofString in component code.

Version Numbers for the different packages.
 use \ingroup oofVersionMacros to include items in this group

MFC application framework Only.
 use \ingroup oofMFCMacros to include items in this group

PowerPlant application framework Only.
 use \ingroup oofPPMacros to include items in this group

DLL Export Macros
 OOF..._EXPORT macros are used to export/import classes or functions to/from DLL
if DLL is created, the OOF..._CREATE_DLL must be set on
if DLL is used, the OOF..._USE_DLL must be set on
if DLL is not used (so static library OOF...LIB.LIB is linked or created) both macros
(OOF..._CREATE_DLL and OOF..._USE_DLL) must be set off; OOF..._EXPORT will be expanded to an empty string
on non-Windows platforms, the OOF..._EXPORT macros will be expanded to an empty string
.


Defines

#define OOF_INTEL_BYTE_ORDER   0
 define a constant we can use to determine if byte flipping needed.

#define MacLiteral(x)   "\p"x
 Portable constand used to hide use of Pascal strings in some interfaces.

#define OOF_READ_XML
 Define to build the core database with ability to parse XML schema and import database from XML.

#define OOF_OOFSTR_FORMAT_BUFFERSIZE   1024
 Defines the size of the local buffer used in oofString::format for vsprintf.

#define OOF_OOFSTR_DONT_REALLOC_BELOW   81
 Defines the size of strings below which we will just copy a string in oofString::setChars() rather than allocating a new buffer.

#define kBigErrAlert   1001
 error reporting alert number.


Define Documentation

#define kBigErrAlert   1001
 

error reporting alert number.

if you have not included oofmac.rsrc or have changed the number of the alert you will need to fix the following

#define MacLiteral  )     "\p"x
 

Portable constand used to hide use of Pascal strings in some interfaces.

#define OOF_INTEL_BYTE_ORDER   0
 

define a constant we can use to determine if byte flipping needed.

auto-defines if your makefile hasn't done so already, where possible.

Warning:
doesn't detect Linux or Solaris/x86 so MUST define in makefile.

#define OOF_OOFSTR_DONT_REALLOC_BELOW   81
 

Defines the size of strings below which we will just copy a string in oofString::setChars() rather than allocating a new buffer.

This prevents thrashing the heap when regularly updating relatively small strings.

If you have lots of string copying of size X, build with this value defined greater than X.

Warning:
If you have a lot of string copying and set this value too high you will be wasting memory. eg: say you set OOF_OOFSTR_DONT_REALLOC_BELOW to 1024 then:
	oofString longString = "some value 800 bytes long";
	longString = "hi";  // instead of a delete[] and new[], you are now wasting 798 bytes
	

#define OOF_OOFSTR_FORMAT_BUFFERSIZE   1024
 

Defines the size of the local buffer used in oofString::format for vsprintf.

Warning:
this is a vulnerable but very useful part of oofString - be carefulabout buffer sizes and abuse.

#define OOF_READ_XML
 

Define to build the core database with ability to parse XML schema and import database from XML.


Generated on Fri Jan 2 01:36:00 2004 for OOFILE by doxygen 1.3.5