Overview
The STEP-NC Control Library provides functions for using STEP
process information with industrial controls. It is
called stixctl
, and is used with the STEP and STEP-NC
library stack.
Getting Started
The stixctl.h
master header brings in all of the
definitions from the stixctl library. Your application will
need to initialize the STEP EXPRESS library and the ARM library.
#include <stp_schema.h> #include <stix.h> #include <STModule.h> int main (int argc, char ** argv) { stplib_init(); ST_MODULE_FORCE_LOAD(); RoseDesign * design = ROSE.findDesign (srcfile); stix_tag_units(design); ARMpopulate(design); [ ... your code here ... ] return 0; }
The functions are prefixed with "stixctl_
" and classes
are prefixed with "Stix
". This avoids conflicts with the
STEP EXPRESS classes, which are prefixed with "stp_
" and
the ROSE library classes which are prefixed with "Rose
"
or "rose_
".
Compiling and Linking
Add the following paths and link settings to your C++ project settings.
- Include Path:
$(ROSE_INCLUDE)/stixctl
- Library Path:
$(ROSE_LIB)
- Link Library:
stixctl.lib
or-lstixctl
The example below shows what the include paths on your compile line would look like.
/I"$(ROSE_INCLUDE)" /I"$(ROSE_INCLUDE)/stp_aim" /I"$(ROSE_INCLUDE)/stp_arm" /I"$(ROSE_INCLUDE)/stmodule" /I"$(ROSE_INCLUDE)/stixctl" /I"$(ROSE_INCLUDE)/stix" ==> Windows -I$(ROSE_INCLUDE) -I$(ROSE_INCLUDE)/stp_aim -I$(ROSE_INCLUDE)/stp_arm -I$(ROSE_INCLUDE)/stmodule -I$(ROSE_INCLUDE)/stixctl -I$(ROSE_INCLUDE)/stix ==> Unix
The example below shows what the libraries on your link line would look like.
stixctl.lib stp_arm.lib stix.lib stp_aim.lib stmodule.lib rosexml.lib rosemath.lib rose.lib ==> Windows static -lstixctl -lstp_arm -lstix -lstp_aim -lstmodule -lrosexml -lrosemath -lrose ==> Unix static