| 
    Open CASCADE Technology 7.8.2.dev
    
   | 
 
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 More...
#include <Transfer_Finder.hxx>

Public Member Functions | |
| size_t | 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 equality : 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.   | |
| NCollection_DataMap< TCollection_AsciiString, Handle< Standard_Transient > > & | AttrList () | 
| 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>   | |
  Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor.   | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing.   | |
| Standard_Transient & | operator= (const Standard_Transient &) | 
| Assignment operator, needed to avoid copying reference counter.   | |
| virtual | ~Standard_Transient () | 
| Destructor must be virtual.   | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const | 
| Returns a type descriptor about this object.   | |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const | 
| Returns a true value if this is an instance of Type.   | |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const | 
| Returns a true value if this is an instance of TypeName.   | |
| Standard_Boolean | IsKind (const opencascade::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.   | |
| 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.   | |
| Standard_Transient * | This () const | 
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.   | |
| Standard_Integer | GetRefCount () const noexcept | 
| Get the reference counter of this object.   | |
| void | IncrementRefCounter () noexcept | 
| Increments the reference counter of this object.   | |
| Standard_Integer | DecrementRefCounter () noexcept | 
| Decrements the reference counter of this object; returns the decremented value.   | |
| virtual void | Delete () const | 
| Memory deallocator for transient classes.   | |
Protected Member Functions | |
| void | SetHashCode (const size_t code) | 
| Stores the HashCode which corresponds to the Value given to create the Mapper.   | |
Additional Inherited Members | |
  Public Types inherited from Standard_Transient | |
| typedef void | base_type | 
| Returns a type descriptor about this object.   | |
  Static Public Member Functions inherited from Standard_Transient | |
| static constexpr const char * | get_type_name () | 
| Returns a type descriptor about this object.   | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () | 
| Returns type descriptor of Standard_Transient class.   | |
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
| Handle< Standard_Transient > Transfer_Finder::Attribute | ( | const Standard_CString | name | ) | const | 
Returns an attribute from its name. Null Handle if not recorded (whatever Transient, Integer, Real ...)
| Interface_ParamType Transfer_Finder::AttributeType | ( | const Standard_CString | name | ) | const | 
Returns the type of an attribute : ParamInt , ParamReal , ParamText (String) , ParamIdent (any) or ParamVoid (not recorded)
| NCollection_DataMap< TCollection_AsciiString, Handle< Standard_Transient > > & Transfer_Finder::AttrList | ( | ) | 
Returns the exhaustive list of attributes.
      
  | 
  pure virtual | 
Specific testof equality : to be defined by each sub-class, must be False if Finders have not the same true Type, else their contents must be compared.
Implemented in Transfer_TransientMapper, and TransferBRep_ShapeMapper.
| Standard_Boolean Transfer_Finder::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.
| void Transfer_Finder::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
| size_t Transfer_Finder::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)
| Standard_Boolean Transfer_Finder::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_Boolean Transfer_Finder::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_Boolean Transfer_Finder::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_Integer Transfer_Finder::IntegerAttribute | ( | const Standard_CString | name | ) | const | 
Returns an integer attribute from its name. 0 if not recorded.
| Standard_Real Transfer_Finder::RealAttribute | ( | const Standard_CString | name | ) | const | 
Returns a real attribute from its name. 0.0 if not recorded.
| Standard_Boolean Transfer_Finder::RemoveAttribute | ( | const Standard_CString | name | ) | 
Removes an attribute Returns True when done, False if this attribute did not exist.
| void Transfer_Finder::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 Transfer_Finder::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)
Stores the HashCode which corresponds to the Value given to create the Mapper.
| void Transfer_Finder::SetIntegerAttribute | ( | const Standard_CString | name, | 
| const Standard_Integer | val | ||
| ) | 
Adds an integer value for an attribute.
| void Transfer_Finder::SetRealAttribute | ( | const Standard_CString | name, | 
| const Standard_Real | val | ||
| ) | 
Adds a real value for an attribute.
| void Transfer_Finder::SetStringAttribute | ( | const Standard_CString | name, | 
| const Standard_CString | val | ||
| ) | 
Adds a String value for an attribute.
| Standard_CString Transfer_Finder::StringAttribute | ( | const Standard_CString | name | ) | const | 
Returns a String attribute from its name. "" if not recorded.
      
  | 
  virtual | 
Returns the Type of the Value. By default, returns the DynamicType of <me>, but can be redefined.
Reimplemented in Transfer_TransientMapper, and TransferBRep_ShapeMapper.
      
  | 
  virtual | 
Returns the name of the Type of the Value. Default is name of ValueType, unless it is for a non-handled object.
Reimplemented in Transfer_TransientMapper, and TransferBRep_ShapeMapper.