# 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:

- Interface_UndefinedContent.hxx