OCC Main Page | DataExchange | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

DataExchange
TKXSBase
Interface


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
.

#include <Interface_UndefinedContent.hxx>


Public Member Functions

Standard_EXPORT Interface_UndefinedContent ()
 Defines an empty UndefinedContent
.
Standard_EXPORT Standard_Integer NbParams () const
 Gives count of recorded parameters
.
Standard_EXPORT Standard_Integer NbLiterals () const
 Gives count of Literal Parameters
.
Standard_EXPORT 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
.
Standard_EXPORT 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
.
Standard_EXPORT 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
.
Standard_EXPORT Handle_Standard_Transient ParamEntity (const Standard_Integer num) const
 Returns Entity corresponding to a Param, given its rank
.
Standard_EXPORT Handle_TCollection_HAsciiString ParamValue (const Standard_Integer num) const
 Returns litteral value of a Parameter, given its rank
.
Standard_EXPORT 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)
.
Standard_EXPORT void AddLiteral (const Interface_ParamType ptype, const Handle(TCollection_HAsciiString)&val)
 Adds a literal Parameter to the list
.
Standard_EXPORT void AddEntity (const Interface_ParamType ptype, const Handle(Standard_Transient)&ent)
 Adds a Parameter which references an Entity
.
Standard_EXPORT void RemoveParam (const Standard_Integer num)
 Removes a Parameter given its rank
.
Standard_EXPORT 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)
.
Standard_EXPORT 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
.
Standard_EXPORT void SetEntity (const Standard_Integer num, const Handle(Standard_Transient)&ent)
 Changes the Entity referenced by the Parameter <num>
(with same ParamType)
.
Standard_EXPORT Interface_EntityList EntityList () const
 Returns globally the list of param entities. Note that it can
be used as shared entity list for the UndefinedEntity
.
Standard_EXPORT 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)
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Attributes

Standard_Integer thenbparams
Standard_Integer thenbstr
Handle_TColStd_HArray1OfInteger theparams
Handle_Interface_HArray1OfHAsciiString thevalues
Interface_EntityList theentities


Constructor & Destructor Documentation

Standard_EXPORT Interface_UndefinedContent::Interface_UndefinedContent  ) 
 


Member Function Documentation

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

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

Standard_EXPORT Interface_EntityList Interface_UndefinedContent::EntityList  )  const
 

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

Standard_EXPORT const Interface_UndefinedContent::Handle Standard_Type   )  const
 

Standard_EXPORT Standard_Boolean Interface_UndefinedContent::IsParamEntity const Standard_Integer  num  )  const
 

Standard_EXPORT Standard_Integer Interface_UndefinedContent::NbLiterals  )  const
 

Standard_EXPORT Standard_Integer Interface_UndefinedContent::NbParams  )  const
 

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

Standard_EXPORT Handle_Standard_Transient Interface_UndefinedContent::ParamEntity const Standard_Integer  num  )  const
 

Standard_EXPORT Interface_ParamType Interface_UndefinedContent::ParamType const Standard_Integer  num  )  const
 

Standard_EXPORT Handle_TCollection_HAsciiString Interface_UndefinedContent::ParamValue const Standard_Integer  num  )  const
 

Standard_EXPORT void Interface_UndefinedContent::RemoveParam const Standard_Integer  num  ) 
 

Standard_EXPORT void Interface_UndefinedContent::Reservate const Standard_Integer  nb,
const Standard_Integer  nblit
 

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

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

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


Field Documentation

Interface_EntityList Interface_UndefinedContent::theentities [private]
 

Standard_Integer Interface_UndefinedContent::thenbparams [private]
 

Standard_Integer Interface_UndefinedContent::thenbstr [private]
 

Handle_TColStd_HArray1OfInteger Interface_UndefinedContent::theparams [private]
 

Handle_Interface_HArray1OfHAsciiString Interface_UndefinedContent::thevalues [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 14:41:39 2008 for OpenCASCADE by  doxygen 1.4.1