Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
Interface_UndefinedContent Class Reference

Defines resources for an "Undefined Entity" : such an Entity
is used to describe an Entity which complies with the Norm,
but of an Unknown Type : hence it is kept under a literal
form (avoiding to loose data). UndefinedContent offers a way
to store a list of Parameters, as literals or references to
other Entities

Each Interface must provide one "UndefinedEntity", which must
have same basic description as all its types of entities :
the best way would be double inheritance : on the Entity Root
of the Norm and on an general "UndefinedEntity"

While it is not possible to do so, the UndefinedEntity of each
Interface can define its own UndefinedEntity by INCLUDING
(in a field) this UndefinedContent

Hence, for that UndefinedEntity, define a Constructor which
creates this UndefinedContent, plus access methods to it
(or to its data, calling methods defined here).

Finally, the Protocols of each norm have to Create and
Recognize Unknown Entities of this norm
More...

#include <Interface_UndefinedContent.hxx>

Inheritance diagram for Interface_UndefinedContent:
Inheritance graph
[legend]

Public Member Functions

 Interface_UndefinedContent ()
 Defines an empty UndefinedContent
More...
 
Standard_Integer NbParams () const
 Gives count of recorded parameters
More...
 
Standard_Integer NbLiterals () const
 Gives count of Literal Parameters
More...
 
Standard_Boolean ParamData (const Standard_Integer num, Interface_ParamType &ptype, Handle< Standard_Transient > &ent, Handle< TCollection_HAsciiString > &val) const
 Returns data of a Parameter : its type, and the entity if it
designates en entity ("ent") or its literal value else ("str")
Returned value (Boolean) : True if it is an Entity, False else
More...
 
Interface_ParamType ParamType (const Standard_Integer num) const
 Returns the ParamType of a Param, given its rank
Error if num is not between 1 and NbParams
More...
 
Standard_Boolean IsParamEntity (const Standard_Integer num) const
 Returns True if a Parameter is recorded as an entity
Error if num is not between 1 and NbParams
More...
 
Handle_Standard_Transient ParamEntity (const Standard_Integer num) const
 Returns Entity corresponding to a Param, given its rank
More...
 
Handle_TCollection_HAsciiString ParamValue (const Standard_Integer num) const
 Returns litteral value of a Parameter, given its rank
More...
 
void Reservate (const Standard_Integer nb, const Standard_Integer nblit)
 Manages reservation for parameters (internal use)
(nb : total count of parameters, nblit : count of literals)
More...
 
void AddLiteral (const Interface_ParamType ptype, const Handle< TCollection_HAsciiString > &val)
 Adds a literal Parameter to the list
More...
 
void AddEntity (const Interface_ParamType ptype, const Handle< Standard_Transient > &ent)
 Adds a Parameter which references an Entity
More...
 
void RemoveParam (const Standard_Integer num)
 Removes a Parameter given its rank
More...
 
void SetLiteral (const Standard_Integer num, const Interface_ParamType ptype, const Handle< TCollection_HAsciiString > &val)
 Sets a new value for the Parameter <num>, to a literal value
(if it referenced formerly an Entity, this Entity is removed)
More...
 
void SetEntity (const Standard_Integer num, const Interface_ParamType ptype, const Handle< Standard_Transient > &ent)
 Sets a new value for the Parameter <num>, to reference an
Entity. To simply change the Entity, see the variant below
More...
 
void SetEntity (const Standard_Integer num, const Handle< Standard_Transient > &ent)
 Changes the Entity referenced by the Parameter <num>
(with same ParamType)
More...
 
Interface_EntityList EntityList () const
 Returns globally the list of param entities. Note that it can
be used as shared entity list for the UndefinedEntity
More...
 
void GetFromAnother (const Handle< Interface_UndefinedContent > &other, Interface_CopyTool &TC)
 Copies contents of undefined entities; deigned to be called by
GetFromAnother method from Undefined entity of each Interface
(the basic operation is the same regardless the norm)
More...
 
- Public Member Functions inherited from MMgt_TShared
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void ShallowDump (Standard_OStream &) const
 
virtual const
Handle_Standard_Type & 
DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const Handle_Standard_Type &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const Handle_Standard_Type &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

Detailed Description

Defines resources for an "Undefined Entity" : such an Entity
is used to describe an Entity which complies with the Norm,
but of an Unknown Type : hence it is kept under a literal
form (avoiding to loose data). UndefinedContent offers a way
to store a list of Parameters, as literals or references to
other Entities

Each Interface must provide one "UndefinedEntity", which must
have same basic description as all its types of entities :
the best way would be double inheritance : on the Entity Root
of the Norm and on an general "UndefinedEntity"

While it is not possible to do so, the UndefinedEntity of each
Interface can define its own UndefinedEntity by INCLUDING
(in a field) this UndefinedContent

Hence, for that UndefinedEntity, define a Constructor which
creates this UndefinedContent, plus access methods to it
(or to its data, calling methods defined here).

Finally, the Protocols of each norm have to Create and
Recognize Unknown Entities of this norm

Constructor & Destructor Documentation

Interface_UndefinedContent::Interface_UndefinedContent ( )

Defines an empty UndefinedContent

Member Function Documentation

void Interface_UndefinedContent::AddEntity ( const Interface_ParamType  ptype,
const Handle< Standard_Transient > &  ent 
)

Adds a Parameter which references an Entity

void Interface_UndefinedContent::AddLiteral ( const Interface_ParamType  ptype,
const Handle< TCollection_HAsciiString > &  val 
)

Adds a literal Parameter to the list

Interface_EntityList Interface_UndefinedContent::EntityList ( ) const

Returns globally the list of param entities. Note that it can
be used as shared entity list for the UndefinedEntity

void Interface_UndefinedContent::GetFromAnother ( const Handle< Interface_UndefinedContent > &  other,
Interface_CopyTool TC 
)

Copies contents of undefined entities; deigned to be called by
GetFromAnother method from Undefined entity of each Interface
(the basic operation is the same regardless the norm)

Standard_Boolean Interface_UndefinedContent::IsParamEntity ( const Standard_Integer  num) const

Returns True if a Parameter is recorded as an entity
Error if num is not between 1 and NbParams

Standard_Integer Interface_UndefinedContent::NbLiterals ( ) const

Gives count of Literal Parameters

Standard_Integer Interface_UndefinedContent::NbParams ( ) const

Gives count of recorded parameters

Standard_Boolean Interface_UndefinedContent::ParamData ( const Standard_Integer  num,
Interface_ParamType ptype,
Handle< Standard_Transient > &  ent,
Handle< TCollection_HAsciiString > &  val 
) const

Returns data of a Parameter : its type, and the entity if it
designates en entity ("ent") or its literal value else ("str")
Returned value (Boolean) : True if it is an Entity, False else

Handle_Standard_Transient Interface_UndefinedContent::ParamEntity ( const Standard_Integer  num) const

Returns Entity corresponding to a Param, given its rank

Interface_ParamType Interface_UndefinedContent::ParamType ( const Standard_Integer  num) const

Returns the ParamType of a Param, given its rank
Error if num is not between 1 and NbParams

Handle_TCollection_HAsciiString Interface_UndefinedContent::ParamValue ( const Standard_Integer  num) const

Returns litteral value of a Parameter, given its rank

void Interface_UndefinedContent::RemoveParam ( const Standard_Integer  num)

Removes a Parameter given its rank

void Interface_UndefinedContent::Reservate ( const Standard_Integer  nb,
const Standard_Integer  nblit 
)

Manages reservation for parameters (internal use)
(nb : total count of parameters, nblit : count of literals)

void Interface_UndefinedContent::SetEntity ( const Standard_Integer  num,
const Interface_ParamType  ptype,
const Handle< Standard_Transient > &  ent 
)

Sets a new value for the Parameter <num>, to reference an
Entity. To simply change the Entity, see the variant below

void Interface_UndefinedContent::SetEntity ( const Standard_Integer  num,
const Handle< Standard_Transient > &  ent 
)

Changes the Entity referenced by the Parameter <num>
(with same ParamType)

void Interface_UndefinedContent::SetLiteral ( const Standard_Integer  num,
const Interface_ParamType  ptype,
const Handle< TCollection_HAsciiString > &  val 
)

Sets a new value for the Parameter <num>, to a literal value
(if it referenced formerly an Entity, this Entity is removed)


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