Open CASCADE Technology 6.6.0
|
a Finder allows to map any kind of object as a Key for a Map.
This works by defining, for a Hash Code, that of the real Key,
not of the Finder which acts only as an intermediate.
When a Map asks for the HashCode of a Finder, this one returns
the code it has determined at creation time
#include <Transfer_Finder.hxx>
Public Member Functions | |
Standard_Integer | GetHashCode () const |
Returns the HashCode which has been stored by SetHashCode (remark that HashCode could be deferred then be defined by sub-classes, the result is the same) | |
virtual Standard_Boolean | Equates (const Handle< Transfer_Finder > &other) const =0 |
Specific testof equallity : to be defined by each sub-class, must be False if Finders have not the same true Type, else their contents must be compared | |
virtual Handle_Standard_Type | ValueType () const |
Returns the Type of the Value. By default, returns the DynamicType of <me>, but can be redefined | |
virtual Standard_CString | ValueTypeName () const |
Returns the name of the Type of the Value. Default is name of ValueType, unless it is for a non-handled object | |
void | SetAttribute (const Standard_CString name, const Handle< Standard_Transient > &val) |
Adds an attribute with a given name (replaces the former one with the same name if already exists) | |
Standard_Boolean | RemoveAttribute (const Standard_CString name) |
Removes an attribute Returns True when done, False if this attribute did not exist | |
Standard_Boolean | GetAttribute (const Standard_CString name, const Handle< Standard_Type > &type, Handle< Standard_Transient > &val) const |
Returns an attribute from its name, filtered by a type If no attribute has this name, or if it is not kind of this type, <val> is Null and returned value is False Else, it is True | |
Handle_Standard_Transient | Attribute (const Standard_CString name) const |
Returns an attribute from its name. Null Handle if not recorded (whatever Transient, Integer, Real ...) | |
Interface_ParamType | AttributeType (const Standard_CString name) const |
Returns the type of an attribute : ParamInt , ParamReal , ParamText (String) , ParamIdent (any) or ParamVoid (not recorded) | |
void | SetIntegerAttribute (const Standard_CString name, const Standard_Integer val) |
Adds an integer value for an attribute | |
Standard_Boolean | GetIntegerAttribute (const Standard_CString name, Standard_Integer &val) const |
Returns an attribute from its name, as integer If no attribute has this name, or not an integer, <val> is 0 and returned value is False Else, it is True | |
Standard_Integer | IntegerAttribute (const Standard_CString name) const |
Returns an integer attribute from its name. 0 if not recorded | |
void | SetRealAttribute (const Standard_CString name, const Standard_Real val) |
Adds a real value for an attribute | |
Standard_Boolean | GetRealAttribute (const Standard_CString name, Standard_Real &val) const |
Returns an attribute from its name, as real If no attribute has this name, or not a real <val> is 0.0 and returned value is False Else, it is True | |
Standard_Real | RealAttribute (const Standard_CString name) const |
Returns a real attribute from its name. 0.0 if not recorded | |
void | SetStringAttribute (const Standard_CString name, const Standard_CString val) |
Adds a String value for an attribute | |
Standard_Boolean | GetStringAttribute (const Standard_CString name, Standard_CString &val) const |
Returns an attribute from its name, as String If no attribute has this name, or not a String <val> is 0.0 and returned value is False Else, it is True | |
Standard_CString | StringAttribute (const Standard_CString name) const |
Returns a String attribute from its name. "" if not recorded | |
Handle_Dico_DictionaryOfTransient | AttrList () const |
Returns the exhaustive list of attributes | |
void | SameAttributes (const Handle< Transfer_Finder > &other) |
Gets the list of attributes from <other>, as such, i.e. not copied : attributes are shared, any attribute edited, added, or removed in <other> is also in <me> and vice versa The former list of attributes of <me> is dropped | |
void | GetAttributes (const Handle< Transfer_Finder > &other, const Standard_CString fromname="", const Standard_Boolean copied=Standard_True) |
Gets the list of attributes from <other>, by copying it By default, considers all the attributes from <other> If <fromname> is given, considers only the attributes with name beginning by <fromname> For each attribute, if <copied> is True (D), its value is also copied if it is a basic type (Integer,Real,String), else it remains shared between <other> and <me> These new attributes are added to the existing ones in <me>, in case of same name, they replace the existing ones | |
Protected Member Functions | |
void | SetHashCode (const Standard_Integer code) |
Stores the HashCode which corresponds to the Value given to create the Mapper |
Handle_Standard_Transient Transfer_Finder::Attribute | ( | const Standard_CString | name | ) | const |
Interface_ParamType Transfer_Finder::AttributeType | ( | const Standard_CString | name | ) | const |
Handle_Dico_DictionaryOfTransient Transfer_Finder::AttrList | ( | ) | const |
virtual Standard_Boolean Transfer_Finder::Equates | ( | const Handle< Transfer_Finder > & | other | ) | const [pure virtual] |
Implemented in Transfer_TransientMapper, TransferBRep_ShapeMapper, and TransferBRep_OrientedShapeMapper.
Standard_Boolean Transfer_Finder::GetAttribute | ( | const Standard_CString | name, |
const Handle< Standard_Type > & | type, | ||
Handle< Standard_Transient > & | val | ||
) | const |
void Transfer_Finder::GetAttributes | ( | const Handle< Transfer_Finder > & | other, |
const Standard_CString | fromname = "" , |
||
const Standard_Boolean | copied = Standard_True |
||
) |
Standard_Integer Transfer_Finder::GetHashCode | ( | ) | const |
Standard_Boolean Transfer_Finder::GetIntegerAttribute | ( | const Standard_CString | name, |
Standard_Integer & | val | ||
) | const |
Standard_Boolean Transfer_Finder::GetRealAttribute | ( | const Standard_CString | name, |
Standard_Real & | val | ||
) | const |
Standard_Boolean Transfer_Finder::GetStringAttribute | ( | const Standard_CString | name, |
Standard_CString & | val | ||
) | const |
Standard_Integer Transfer_Finder::IntegerAttribute | ( | const Standard_CString | name | ) | const |
Standard_Real Transfer_Finder::RealAttribute | ( | const Standard_CString | name | ) | const |
Standard_Boolean Transfer_Finder::RemoveAttribute | ( | const Standard_CString | name | ) |
void Transfer_Finder::SameAttributes | ( | const Handle< Transfer_Finder > & | other | ) |
void Transfer_Finder::SetAttribute | ( | const Standard_CString | name, |
const Handle< Standard_Transient > & | val | ||
) |
void Transfer_Finder::SetHashCode | ( | const Standard_Integer | code | ) | [protected] |
void Transfer_Finder::SetIntegerAttribute | ( | const Standard_CString | name, |
const Standard_Integer | val | ||
) |
void Transfer_Finder::SetRealAttribute | ( | const Standard_CString | name, |
const Standard_Real | val | ||
) |
void Transfer_Finder::SetStringAttribute | ( | const Standard_CString | name, |
const Standard_CString | val | ||
) |
Standard_CString Transfer_Finder::StringAttribute | ( | const Standard_CString | name | ) | const |
virtual Handle_Standard_Type Transfer_Finder::ValueType | ( | ) | const [virtual] |
Reimplemented in Transfer_TransientMapper, TransferBRep_ShapeMapper, and TransferBRep_OrientedShapeMapper.
virtual Standard_CString Transfer_Finder::ValueTypeName | ( | ) | const [virtual] |
Reimplemented in Transfer_TransientMapper, TransferBRep_ShapeMapper, and TransferBRep_OrientedShapeMapper.