Patch Number : 007
Product : ST-Developer
Obsoletes : 003
Prerequisites: None
Description : DIS SDAI fix
======================================================================
CONTENTS OF THIS README:
Description
Download and Install Instructions
UNIX
Windows
Patch Contents
New Function Reference
Fixes from patch 003
======================================================================
DESCRIPTION:
This patch corrects a number of problems in the DIS version of the SDAI
library and dictionary generator that have been discovered since the
ST-Developer 1.6 release. In addition, the patch adds a number of extension
functions to the library to assist in interfacing SdaiModels and RoseDesigns.
The patch provides a new version of the SDAI library and header file.
This patch obsoletes patch 003.
In addition to the fixes in patch 003 this patch provides
the following fixes and features:
Dictionary files are generated with the correct lower case names.
Redeclared attribute are handled correctly in the library. There was a
bug in the ST-Developer release which could make a the contents of a
model inaccessible if the schema contained redeclared attributes
You may pass a full path name to sdaiAccessModel().
The attributes member of entity_definition works correctly.
Complex entities are created and initialized when a model is loaded,
rather than on demand. This allows you to browse the dictionary to find
the complex types the the ROSE working set.
The schema's data dictionary is now opened implicitly where a model is
opened. In the past, it was required to explicitly open the dictionary
model if you wanted to perform sdaiIsSubtypeOf on attributes and other
dictionary instances.
In addition, new utility functions have been added to provide easier access to
entity definition instances and ROSE meta-data.
======================================================================
DOWNLOAD AND INSTALL INSTRUCTIONS
There is a several versions of this patch available -- one for each
architecture that ST-Developer supports. They are all available for FTP on
the STEP Tools ftp server (ftp.steptools.com).
UNIX:
The UNIX versions of the patch are available in the in the following files
located in ftp://ftp.steptools.com/pub/patches.
AIX 4.1 on IBM PowerPC patch_007_aix_4.1.tar.Z
DEC UNIX on Alpha patch_007_osf.tar.Z
HP-UX Version 10 patch_007_hpux_10.x.tar.Z
HP-UX Verion 9 patch_007_hpux_9.x.tar.Z
Linux on Intel x86 patch_007_linux.tar.Z
SGI IRIX 5.3 patch_007_irix_5.3.tar.Z
SGI IRIX 6.2 patch_007_irix_6.2.tar.Z
Solaris 2.x on SPARC patch_007_solaris.tar.Z
SunOS 4.1.x on SPARC patch_007_sunos.tar.Z
Each patch is a compressed tar file. To unpack:
% zcat patch_007_ARCH.tar.Z | tar xvf -
% cd patch_007_ARCH
% ./install_patch
WINDOWS:
The Windows versions are available in the following files which are located in
ftp://ftp.steptools.com/pub/patches
Windows NT/95 on Intel x86 patch_007_i86_win.zip
Windows NT on DEC Alpha patch_007_axp_win.zip
Each windows patch is a zip file. (Note: this file contains subdirectories.
You may need to tell you unzip program to extract subdirectories).
C:> unzip patch_007_ARCH.zip
After you have extracted the file:
C:> cd patch_007_ARCH
C:> install_patch
======================================================================
PATCH CONTENTS:
bin/gendict_dis - EXPRESS compiler backend
include/sdai.h - SDAI Header file
lib/*/libsdaidis.a - SDAI DIS library. (One file for every version
sdaidis.lib of the library in ST-Developer)
system_db/schemas/SDAI_DIS_dictionary_schema_SDAI_DICT.rose
- Dictionary model for the SDAI Dictionary
======================================================================
FUNCTION REFERENCE
A number of function have been added to the SDAI library since the
ST-Developer release. These function are all STEP Tools extension functions
and they are not part of STEP Part 24. They provide general utility and
access to ROSE internal.
----------------------------------------
void _sdaiRescanRepository (SdaiRep repository) (Patch 007)
The _sdaiRescanRepository function forces the library to reread the list of
models in a repository. This may be useful if a model has been added to the
repository since the SDAI application was started.
----------------------------------------
SdaiEntity _sdaiGetEntityForDomain (RoseDomain * dom);
The _sdaiGetEntityForDomain returns the SdaiEntity associated with a RoseDomain
object. This function is only callable from C++ code, and you must #include
before you #include
----------------------------------------
RoseDomain * _sdaiGetDomainForEntity (SdaiEntity ent);
The _sdaiGetDomainforEntity returns the RoseDomain associated with an
SdaiEntity object. This function is only callable from C++ code, and you must
#include before you #include
----------------------------------------
void _sdaiSetModelFormat (SdaiModel mod, SdaiString format) (Patch 003)
The _sdaiSetModelFormat function sets the file format for a specified SDAI
model. This function provides an SDAI interface to the format() method of
RoseDesign. The format is a string naming the file format. Legal values for
format include "step", "rose", and "standard".
----------------------------------------
RoseDesign * _sdaiGetRoseDesign (SdaiModel mod) (Patch 003)
The _sdaiGetRoseDesign function returns the RoseDesign that corresponds to a
specified SDAI Model. This function is only callable from C++ code, and you
must #include before you #include
----------------------------------------
SdaiModel _sdaiGetModel (RoseDesign) (Patch 003)
The _sdaiGetRoseDesign function returns the SDAI Model that corresponds to a
specified RoseDesign. This function is only callable from C++ code, and you
must #include before you #include
======================================================================
PATCH 003 FEATURES:
This includes the following fixes, which were first provided in (now obsolete)
patch 003.
The _sdaiGetAllAttrDefinitions function did not correctly return inherited
attributes.
Non-persistent lists (NPLs) leaked large amounts of memory.
Complex entities could not be accessed unless sdaiGetComplexEntity was
called first to create the entity definition.
In addition, the patch provides the following enhancements the library:
The performance of get and put function has been improved.
The following (extension) functions have been added to the binding:
_sdaiGetRoseDesign(), _sdaiGetModel(), and _sdaiSetModelFormat(). (See
below for information on using these functions)