Open CASCADE Technology 6.6.0
|
Allows direct binding between a starting Object and the Result
of its transfer, when it can be made of several Transient
Objects. Compared to a Transcriptor, it has no Transfer Action
Result is a list of Transient Results. Unique Result is not
available : SetResult is redefined to start the list on the
first call, and refuse the other times.
rr
Remark : MultipleBinder itself is intended to be created and
filled by TransferProcess itself (method Bind). In particular,
conflicts between Unique (Standard) result and Multiple result
are avoided through management made by TransferProcess.
Also, a Transcriptor (with an effective Transfer Method) which
can produce a Multiple Result, may be defined as a sub-class
of MultipleBinder by redefining method Transfer.
#include <Transfer_MultipleBinder.hxx>
Public Member Functions | |
Transfer_MultipleBinder () | |
normal standard constructor, creates an empty MultipleBinder | |
virtual Standard_Boolean | IsMultiple () const |
Returns True if a starting object is bound with SEVERAL results : Here, returns allways True | |
Handle_Standard_Type | ResultType () const |
Returns the Type permitted for Results, i.e. here Transient | |
Standard_CString | ResultTypeName () const |
Returns the Name of the Type which characterizes the Result Here, returns "(list)" | |
void | AddResult (const Handle< Standard_Transient > &res) |
Adds a new Item to the Multiple Result | |
Standard_Integer | NbResults () const |
Returns the actual count of recorded (Transient) results | |
Handle_Standard_Transient | ResultValue (const Standard_Integer num) const |
Returns the value of the recorded result n0 <num> | |
Handle_TColStd_HSequenceOfTransient | MultipleResult () const |
Returns the Multiple Result, if it is defined (at least one Item). Else, returns a Null Handle | |
void | SetMultipleResult (const Handle< TColStd_HSequenceOfTransient > &mulres) |
Defines a Binding with a Multiple Result, given as a Sequence Error if a Unique Result has yet been defined |
Transfer_MultipleBinder::Transfer_MultipleBinder | ( | ) |
void Transfer_MultipleBinder::AddResult | ( | const Handle< Standard_Transient > & | res | ) |
virtual Standard_Boolean Transfer_MultipleBinder::IsMultiple | ( | ) | const [virtual] |
Reimplemented from Transfer_Binder.
Handle_TColStd_HSequenceOfTransient Transfer_MultipleBinder::MultipleResult | ( | ) | const |
Standard_Integer Transfer_MultipleBinder::NbResults | ( | ) | const |
Handle_Standard_Type Transfer_MultipleBinder::ResultType | ( | ) | const [virtual] |
Implements Transfer_Binder.
Standard_CString Transfer_MultipleBinder::ResultTypeName | ( | ) | const [virtual] |
Implements Transfer_Binder.
Handle_Standard_Transient Transfer_MultipleBinder::ResultValue | ( | const Standard_Integer | num | ) | const |
void Transfer_MultipleBinder::SetMultipleResult | ( | const Handle< TColStd_HSequenceOfTransient > & | mulres | ) |