Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Static Public Member Functions
XSDRAW Class Reference

Basic package to work functions of X-STEP (IFSelect & Co)
under control of DRAW

Works with some "static" data : a SessionPilot (used to run)
with its WorkSession and Model and TransferReader, a
FinderProcess

#include <XSDRAW.hxx>

Static Public Member Functions

static DEFINE_STANDARD_ALLOC void ChangeCommand (const Standard_CString oldname, const Standard_CString newname)
 Takes variables to/from the DRAW session
//! Implements ProgressIndicator for DRAW
//! Changes the name under which a command of xstep is known by
Draw. This allows to avoid collisions
To be called before LoadDraw or any other xstep initialisation

static void RemoveCommand (const Standard_CString oldname)
 Removes a command from the interpretation list of Draw
To be called before LoadDraw or any other xstep initialisation

static Standard_Boolean LoadSession ()
 Defines the basic context to work with a X-STEP Session :
it performs the basic inits, also records the Controller
If the Controller is not yet set, it must be set after
(call to SetController)
LoadSession is called by LoadDraw
Returns True the first time, False if already called

static void LoadDraw (Draw_Interpretor &theCommands)
 Defines the context for using a X-STEP Session under DRAW
Once the various INITs have been done, a call to LoadDraw
records the defined commands for the X-STEP SessionPilot,
into the DRAW interpretation list.
"Set" commands are accessed under command xset
SDS>xset name command ...
Other commands can be accessed directly or under command xstep
SDS>command ... and SDS>xstep command ... are equivalent

Only the command xinit is accessed directly only :
SDS>xinit (from the already defined Controller)
SDS>xinit iges (first defines the Controller as for "iges")

It also records the function to be called by DRAW (not
declared because specific).
And it defines the context variables, i.e. a WorkSession, then
it calls SetController with the currently defined Controller
Remark : at least, the standard commands are recorded

See also Controller : it is part of the Context, but it must
be precised separately

static Standard_Integer Execute (const Standard_CString command, const Standard_CString var="")
 Allows to execute a xstep-draw command from C++ program
Fixed form : Execute("command args...");
Form with a variable text part : add s for the variable :
Execute ("command args %s args..",var) [var is a CString]
Returns the same value as returned by call from DRAW

static Handle_IFSelect_SessionPilot Pilot ()
 Returns the SessionPilot (can be used for direct call)

static Handle_XSControl_WorkSession Session ()
 Returns the WorkSession defined in AddDraw (through Pilot)
It is from XSControl, it brings functionnalities for Transfers

static void SetController (const Handle< XSControl_Controller > &control)
 Defines a Controller for the command "xinit" and applies it
(i.e. calls its method Customise)

static Handle_XSControl_Controller Controller ()
 Returns the Controller, a Null Handle if not yet defined

static Standard_Boolean SetNorm (const Standard_CString normname, const Standard_CString profile="")
 Sets a norm by its name (controller recorded as <normname> )
Returns True if done, False if this norm is unknown
If <profile> is given, also sets the norm to <profile>
(if <profile> is undefined for <normname>, it is ignored)

static Handle_Interface_Protocol Protocol ()
 Returns the actually defined Protocol

static
Handle_Interface_InterfaceModel 
Model ()
 Returns the Model of the Session (it is Session()->Model() )

static void SetModel (const Handle< Interface_InterfaceModel > &model, const Standard_CString file="")
 Sets a Model in session (it is Session()->SetModel(model) )
If <file> is defined, SetLoadedFile is also done

static
Handle_Interface_InterfaceModel 
NewModel ()
 Produces a new model (from the Controller), can be Null
Does not set it in the session

static Handle_Standard_Transient Entity (const Standard_Integer num)
 Returns the entity n0 <num> of the Model of the Session
(it is StartingEntity)
Null Handle if <num> is not suitable

static Standard_Integer Number (const Handle< Standard_Transient > &ent)
 Returns the number of an entity in the Model (StartingNumber)
0 if <ent> unknown in the model, or null

static void SetTransferProcess (const Handle< Standard_Transient > &TP)
 Sets a TransferProcess in order to analyse it (see Activator)
It can be either a FinderProcess or a TransientProcess, in
that case a new TransferReader is created on it

static
Handle_Transfer_TransientProcess 
TransientProcess ()
 Returns the TransferProcess : TransientProcess detained by
the TransferReader

static
Handle_Transfer_FinderProcess 
FinderProcess ()
 Returns the FinderProcess, detained by the TransferWriter

static void InitTransferReader (const Standard_Integer mode)
 Initialises a TransferReader, according to mode :
0 nullifies it, 1 clears it (not nullify)
2 sets it with TransientProcess & Model
3 idem plus roots of TransientProcess
Remark : called with 0 at least at each SetModel/NewModel

static
Handle_XSControl_TransferReader 
TransferReader ()
 Returns the current TransferReader, can be null
It detains the TransientProcess

static Handle_Standard_Transient GetEntity (const Standard_CString name="")
 Takes the name of an entity, either as argument, or (if <name>
is empty) on keybord, and returns the entity
name can be a label or a number (in alphanumeric), it is
searched by NumberFromLabel from WorkSession.
If <name> doesn't match en entity, a Null Handle is returned

static Standard_Integer GetEntityNumber (const Standard_CString name="")
 Same as GetEntity, but returns the number in the model of the
entity. Returns 0 for null handle

static
Handle_TColStd_HSequenceOfTransient 
GetList (const Standard_CString first="", const Standard_CString second="")
 Evaluates and returns a list of entity, from :
keyboard if <first> and <second> are empty, see below
first if second is empty : can be a number/label of an entity
or the name of a selection to be evaluated (standard)
first : name of a selection, evaluated from a list defined by
second
In case of failure, returns a Null Handle

static Standard_Boolean FileAndVar (const Standard_CString file, const Standard_CString var, const Standard_CString def, TCollection_AsciiString &resfile, TCollection_AsciiString &resvar)
 Analyses given file name and variable name, with a default
name for variables. Returns resulting file name and variable
name plus status "file to read"(True) or "already read"(False)
In the latter case, empty resfile means no file available

If <file> is null or empty or equates ".", considers Session
and returned status is False
Else, returns resfile = file and status is True
If is neither null nor empty, resvar = var
Else, the root part of <resfile> is considered, if defined
Else, <def> is taken

static Standard_Integer MoreShapes (Handle< TopTools_HSequenceOfShape > &list, const Standard_CString name)
 Analyses a name as designating Shapes from DRAW variables or
XSTEP transfer (last Transfer on Reading). <name> can be :
"*" : all the root shapes produced by last Transfer (Read)
i.e. considers roots of the TransientProcess
a name : a name of a variable DRAW

Returns the count of designated Shapes. Their list is put in

If

null, it is firstly created. Then it is
completed (Append without Clear) by the Shapes found
Returns 0 if no Shape could be found


Member Function Documentation

static Handle_XSControl_Controller XSDRAW::Controller ( ) [static]
static Standard_Integer XSDRAW::Execute ( const Standard_CString  command,
const Standard_CString  var = "" 
) [static]
static Handle_Transfer_FinderProcess XSDRAW::FinderProcess ( ) [static]
static Handle_TColStd_HSequenceOfTransient XSDRAW::GetList ( const Standard_CString  first = "",
const Standard_CString  second = "" 
) [static]
static void XSDRAW::LoadDraw ( Draw_Interpretor theCommands) [static]
static Handle_Interface_InterfaceModel XSDRAW::Model ( ) [static]
static Handle_Interface_InterfaceModel XSDRAW::NewModel ( ) [static]
static Handle_IFSelect_SessionPilot XSDRAW::Pilot ( ) [static]
static Handle_Interface_Protocol XSDRAW::Protocol ( ) [static]
static void XSDRAW::RemoveCommand ( const Standard_CString  oldname) [static]
static Handle_XSControl_WorkSession XSDRAW::Session ( ) [static]
static void XSDRAW::SetController ( const Handle< XSControl_Controller > &  control) [static]
static void XSDRAW::SetModel ( const Handle< Interface_InterfaceModel > &  model,
const Standard_CString  file = "" 
) [static]
static Standard_Boolean XSDRAW::SetNorm ( const Standard_CString  normname,
const Standard_CString  profile = "" 
) [static]
static Handle_XSControl_TransferReader XSDRAW::TransferReader ( ) [static]
static Handle_Transfer_TransientProcess XSDRAW::TransientProcess ( ) [static]

The documentation for this class was generated from the following file: