Open CASCADE Technology 6.6.0
Public Member Functions | Protected Member Functions
Transfer_Finder Class Reference

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>

Inheritance diagram for Transfer_Finder:
Inheritance graph
[legend]

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


Member Function Documentation

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]
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]
virtual Standard_CString Transfer_Finder::ValueTypeName ( ) const [virtual]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines