Locating Dynamic-Linked Library

The class functions implement the behavior of a class. The class functions of reference objects and parts are specified by the simulation developer in their deriving reference classes and component classes, respectively. The original class functions may be implemented in a dynamic-linked library for an in-process simulator, in an executable program for an external process simulator, or both. For user overriding functions, however, it is required that the functions be implemented in dynamic-linked libraries with specific function names. Though not required, we recommend that all functions within a class be stored in one DLL file to ease maintenance.

A full description of the function entry points in a class can be found in the DLL Function Entry Points section in the SansGUI Reference Manual. Here we describe the procedures of finding out what the overridable functions are and how to specify the locations of user overriding DLLs.

Examining DLL Function Specifications

Because DLL function specifications are stored on a per-class basis, you can examine them via the Class Properties dialog:

Normally, the class should be the immediate parent of an object. It depends, however, on how the classes are defined by the simulation developer. The Class Properties dialog should show Read Only because none of the definitions here are changeable by you, the simulation user. When there exists a DLL tab in the Class Properties dialog, the class has DLL function specifications. Click on the DLL tab to see the details.

The DLL functions listed in the Class Properties dialog are described in full in the DLL Function Entry Points section of the SansGUI Reference Manual. In the DLL specifications in the Class Properties dialog, you can find the following columns:

Specifying User DLL Paths

For a user overriding function in a reference object or part, the SansGUI DLL function loader first checks to see if the DLL function field has a DLL path specified. You can use the Object Properties dialog or the Part Properties dialog to specify the DLL paths for the overriding functions:

For an object, each DLL file path entered in a Dynamic-Linked Library field indicates that the function is overridden. To override all the functions, you need to enter the path of the DLL file in all the fields. You can enter the DLL file paths in a component object so that all the parts derived from it will use the DLL(s) specified. If some of the parts require a little different DLL functions, the Dynamic-Linked Library values in the component object can be overridden in the Part Properties dialog. Use the Override fields in the Part Properties dialog to specify them.


C:\FH_Suite\htmlgifs\home.gif Overriding Simulator Routines Implementing Overriding Routines

SansGUI Modeling and Simulation Environment Version 1.2

Copyright 2000-2003 ProtoDesign, Inc. All rights reserved.