Application Development Manual

Open all sections Open All Close all sections Close All



Close this section 1. Introduction
Close this section 2. C++ Application Framework
Initialization and Termination
Checking API Results
Application Layout
Simple C++ Application Example
Close this section 3. Object Libraries
Libraries
Library Initialization and Termination
Library Dependencies
Library Macros
Using Shared Libraries (DLLs)
DLLs
Building ACIS Shared Libraries
C Runtime Library DLL
Close this section 4. Identifying Model Objects
Using is_entityclass Functions
Derivation from ENTITY
Object Type
Object Level
Inquiring the Type of an Object
Close this section 5. Allocating and Deallocating Memory within ACIS
ACIS rules for heap allocations and deletions
Why is STD_CAST needed?
Close this section 6. Error Handling and Messaging
Error Handling
Error Handling Functions and Macros
Exception Handling Macros
Macro Example
Guidelines
User-Level Error Handling Functions
Error Printing Functions
Error Return Mechanisms
ACIS Error Messages
Adding New Error Messages
Recording Error Messages
Running the Error Message Tool
Macintosh Error Messages
Close this section 7. Debugging
ENTITY Class Debug Method
Error and Warning Messages
Run-Time Debugging
Scheme Debugging Extensions
Close this section 8. Extending the Modeler
Naming Conventions
Sentinels
Filenames
Extending the Application Procedural Interface
Creating a New API Function
API Function Characteristics
Steps
API Source .cxx File
API .hxx Header File
Example API Function
Include Files
Function Return Type and Error Handling
Function Arguments
Making APIs C-Callable
ENTITY Class Arguments
ENTITY_LIST Class Arguments
Begin and End Macros
API_BEGIN and API_END Macros
API_NOP_BEGIN and API_NOP_END Macros
API_TRIAL_BEGIN and API_TRIAL_END Macros
API_SYS_BEGIN and API_SYS_END Macros
Argument Error Checking
Argument Checking Functions
When to Check Arguments
Error Handling
Debugging Macro
Deriving Classes
Levels Of Derivation
Class Names
Files
ENTITY Class Derivation
Assembly Modeling Class Derivation Example
Assembly Modeling
Organization Class
Application-Specific Classes
ASSEMBLY Class
INSTANCE Class
Versioning within ACIS
Important versioning details
How to specify an ACIS version for a single API call
Alternate Methods of Versioning
ALGORITHMIC_VERSION_BLOCK
API_VERS_BEGIN
Run-time Virtual Methods
Design
Usage
Implementing Methods
Calling Methods
Third Party Products
Close this section 9. Entity Derivation Macros
Macros You Must Define
Organization Entity Class
Implementation Macros
ENTITY_DEF
ATTCOPY_DEF
UTILITY_DEF
DEBUG_DEF
SAVE_DEF
RESTORE_DEF
COPY_DEF
SCAN_DEF
FIX_POINTER_DEF
TRANSFORM_DEF
LOSE_DEF
DTOR_DEF
TERMINATE_DEF
SIMPLE_COPY_LOSE
Close this section 10. File Formats
SAT Save File
Scheme Journal File
Debug File
Creating a Debug File
Topology Formats
BODY List
WIRE List
LUMP List
SHELL List
FACE List
LOOP List
COEDGE List
EDGE List
VERTEX List
Geometry Debug Formats
SURFACE List
CURVE List
PCURVE List
POINT List
Summary of Lists
Close this section A. Error Messages
Error Messages