Parasolid Release Area   

<<< Installing Parasolid Chapters Using Parasolid >>>

Contents

[back to top]


4.1 Contents of the Release Area

As described in Chapter 3, "Installing Parasolid", the top level of each Parasolid release CD contains a directory for each platform available on that CD. For example, the PC Platforms CD contains two directories: intel_nt , and intel_linux .

Inside each directory is a base directory that contains all the files necessary to install and use Parasolid for that platform.

On NT platforms, there is an additional base_alternative directory that contains all the files necessary to install and use Parasolid Communicator.

On the SPARC Solaris platform, there is an additional base_sun64 directory that contains all the files necessary to install and use Parasolid on 64-bit Solaris machines. The contents of the base_sun64 directory are identical to the contents of the base directory for SPARC Solaris.

This chapter describes the contents of these directories in some more detail. Apart from some platform-dependent filenames (noted below), the contents are essentially the same for each platform.

 

Note: This chapter describes the contents as they are structured on the release CD. Your own installation of Parasolid will not necessarily reflect this structure.

[back to top]

4.1.1 Privileges

You must make sure that all Parasolid users are able to read these files once they have been copied from the CD. In addition, users will need to be able to write files to the schema directory.

[back to top]

4.1.2 The 'base' directory

The base directory contains all the files needed to install and use the full Parasolid kernel.

 

Note: For the 64-bit version of Parasolid under SPARC Solaris, this directory is called base_sun64 . For the 64-bit version of Parasolid under HP-UX, this directory is called base_hp64 . For the Pentium 4 version of Parasolid, this directory is called base_p4 .

The top-level directory contains the following files.

 

File

Contents

fg.c

Foreign Geometry source code

fg.lib

Foreign Geometry library

fg_library.bat, fg_library.com

Commands to compile 'fg.c' and create a Foreign Geometry library

frustrum.c

Dummy frustrum source code

frustrum_delta.c

Example Partitioned Rollback Frustrum code

frustrum.lib

Dummy frustrum library

frustrum_ifails.h

Return failure codes include file for Frustrum

frustrum_library.bat, frustrum_library.com

Commands to compile 'frustrum.c' and create Frustrum library

frustrum_link.bat, frustrum_link.com

Commands to compile and link 'frustrum_test'

frustrum_test.c

Source of Frustrum library acceptance test

frustrum_tokens.h

Token names include file for Frustrum

kernel_interface.h

KI header file

kid_test.lsp

KID acceptance test

pskernel_archive.lib

Parasolid library. Formerly parasolid.lib .

parasolid_debug.h

Unsupported PK functions that aid application debugging

parasolid_ifails.h

Return failure codes include file for Parasolid

parasolid_kernel.h

PK interface header file for functions available in full Parasolid kernel.

parasolid_link.bat, parasolid_link.com

Commands to compile and link 'parasolid_test.c'

parasolid_test.c

Source of Parasolid library acceptance test

parasolid_tokens.h

Token names include file

parasolid_typedefs.h

Supporting typedefs for KI

testfr.lib

Library containing the Frustrum test function

The 'lispdata' sub-directory

This directory contains just one file.

 

bbcini.lsp

KID LISP initialization start-up file

The 'schema' sub-directory

This directory contains a number of schema files whose names have the form "sch_ ... .sch_txt".

The 'dll' sub-directory (NT)

This directory contains a Parasolid DLL and its corresponding import libraries, and a KID executable linked to the full Parasolid kernel as a shared image. The following DLL is available:

The 'shared_object' sub-directory (UNIX)

This directory contains the Parasolid library and KID as shared images. The shared object files available are as follows:

[back to top]

4.1.3 The 'base_alternative' directory

The base_alternative directory contains all the files needed to install and use Parasolid Communicator. The top-level directory contains the following files.

 

File

Contents

frustrum_ifails.h

Return failure codes include file for Frustrum

frustrum_tokens.h

Token names include file for Frustrum

parasolid_communicator.h

PK interface header file for functions available in Parasolid Communicator.

parasolid_ifails.h

Return failure codes include file for Parasolid

parasolid_tokens.h

Token names include file

The 'schema' sub-directory

This directory contains a number of schema files whose names have the form "sch_ ... .sch_txt".

The 'dll' sub-directory (NT)

This directory contains the DLL for Parasolid Communicator ( pscommunicator.dll ) and its corresponding import library:

[back to top]


4.2 Explanation of files

[back to top]

4.2.1 Files in 'base'

Parasolid library

This is the library of modeling subroutines which will be accessed by the application program via the PK interface functions.

PK and KI interface header files

Interface functions and type declarations for C applications.

Ifails and tokens include files

These are necessary for an application program to avoid using numeric values for PK arguments. They are specific to C, but can be easily edited, for example, to be FORTRAN integer variables.

Parasolid test code

This is included so that you can make a simple test that the library is set up correctly before integrating it with the application program. Parasolid requires a Frustrum - thus a dummy frustrum library is also included. This should only be used for acceptance testing, any customer Frustrum should be written to suit the application. Parasolid also requires Foreign Geometry functions - example functions are included.

Frustrum test code

This tests the dummy frustrum library in isolation from the Parasolid library. It uses the Frustrum tester function (TESTFR), see the Parasolid Downward Interface manual for a full explanation of this. This program can also be used to test your Frustrum.

Frustrum source code and library

Supplied for running the above.

Frustrum library command file

Supplied to build a Frustrum library from the source code.

Frustrum link and Parasolid link command files

These are supplied to link the test programs with the libraries. They can be copied and modified to link any program with Parasolid.

[back to top]

4.2.2 The Kernel Interface Driver (KID)

The KID program provides a LISP front-end to the Parasolid library, which can be used to learn the Kernel, prototype applications and report faults. For a full description see the Parasolid Kernel Interface Driver (KID) Manual. KID loads the LISP initialization file at start-up. The KID test file is supplied as an acceptance test for the KID program.

[back to top]

4.2.3 Schema files

Schema files describe the format and content of Parasolid part files (transmit or partition files), and they are supplied so that a Parasolid-powered application can

A schema file is a platform independent, text based file with a name of the form sch_ XXX .sch_txt (or sch_ XXX .s_t for DOS FAT filesystems).

Each major version (e.g. V11.0, V12.0) has its own schema file. Minor versions (e.g. V11.1) usually use the most recent schema file. The appropriate schema file must be present when transmitting or receiving a part file. For instance if you are trying to read a V11.0 or V11.1 part file into Parasolid V12.0, the relevant schema file ( sch_11004 , in this case) must be present.

Parasolid guarantees upward compatibility of part files between major versions of Parasolid. To support this, schema files corresponding to all previous versions of Parasolid are provided with each new release.

Parasolid also guarantees two-way compatibility within a major version of Parasolid (e.g. a V11.0 file can be read into V11.1 and vice-versa).

Downward compatibility of Parasolid files between major versions is not supported. For example, you cannot read a v12.0 file into v11.1.

 

Warning: You should not attempt to "force" downward compatibility by copying the schema file for a later release into an earlier release of Parasolid. The behavior under these circumstances is not guaranteed or supported by Parasolid. Furthermore, the behavior of downstream operations on such parts is also not guaranteed.

[back to top]

4.2.4 Finding shared libraries

Customers can link the shared Parasolid image into the application and can then do upgrades/patches by just providing a new image. The customer must make sure that the Parasolid version of the new image is compatible with the old one.

To check this at run time, the application writer can use run-time library functions to open the shared image (e.g. dlopen() on some UNIX machines) and call PK_SESSION_ask_kernel_version to extract the version information.

The shared KID image (available only with the full Parasolid kernel) contains embedded information about where to look for the Parasolid library. This information may need to be overridden, so that the run-time loader will search the directory where the customer has put the libraries:

UNIX

There is usually an environment variable (often called LD_LIBRARY_PATH) that can be used to override the library search paths built into the image.

NT

The PATH environment variable is also used as the DLL search path.

 

[back to top]

<<< Installing Parasolid Chapters Using Parasolid >>>