Further Implementation Decisions   

<<< The Example Application Chapters Using the PK Interface >>>

Contents

This appendix discusses other functionality that you may want to consider using when integrating your application with Parasolid. None of the issues discussed here are essential in order to get a working frustrum. For more information on any of the functionality discussed here, refer to the full Parasolid documentation.

[back to top]


RTE and interrupt handling

In addition to an error handler, you can register a signal handler with the operating system to recover from run-time errors and/or user interrupts.

If you don't use a signal handler, then your application will crash when a run-time error occurs.

[back to top]


Rollback

Parasolid has two types of rollback, both of which are available through the same mechanism.

If implemented, you can use rollback in your application in several ways. For example:

You could implement partition level rollback so that each partition has only one part, users could make changes to individual parts and roll them back without affecting other parts in the session.

Rollback is enabled by registering a delta frustrum before the session is started. The delta frustrum performs a similar function to the standard frustrum, and specifies how rollback (delta) information is written and read.

[back to top]


Tracking entities

Your application may need to track various entities within any Parasolid session. For example, tracking is required in order to:

There are several ways of tracking entities in Parasolid, and you need to decide which approach you want to take. The most straightforward ways of tracking entities are:

[back to top]


Session parameters

There are a number of session level parameters that you can set up to alter the behavior for the whole session. Example of session-wide parameters include:

 

Parameter

Description

Continuity and self intersection checking

These settings affect the level of checking performed by various checking functions, and also control whether G1-discontinuous or self-intersecting geometry can be attached to topology.

General topology

This setting allows general bodies - such as non-manifold or disconnected bodies - to be created from Boolean operations.

Roll forward

This option defines whether a session can be rolled forward at any stage. The setting of this option has an affect on the rollback management strategy your application needs to use.

SMP (Symmetric Multi Processing)

This option enables Parasolid to make best use of machines that have more than one processor.

Journaling

A journal file is a record of all the Parasolid commands that are called within a session. It is mainly useful for debugging purposes.

Session level parameters are set just before the Parasolid session is started. For example, journaling can be switched on for the current session as follows:

 

PK_SESSION_start_o_t options;
PK_SESSION_start_o_m( options );

options.journal_file = "c:\\temp\\test"

PK_SESSION_start( &options );

 

Warning: Journaling is a useful debugging tool, but you should not turn it on by default in your application, as this can adversely affect performance. Journaling is typically used as an internal debugging tool, although if necessary you can include a switch in your application code that lets the user turn journaling on when required.

 

[back to top]

<<< The Example Application Chapters Using the PK Interface >>>