Version: 8.3.0
YACS::ENGINE::Pool::ExpData Class Reference
Collaboration diagram for YACS::ENGINE::Pool::ExpData:

Public Member Functions

 ExpData (Any *inValue, unsigned char priority)
 
 ExpData (const ExpData &other)
 
 ~ExpData ()
 
AnyinValue () const
 
AnyoutValue () const
 
void setOutValue (Any *outValue)
 
void markItAsInUse ()
 
bool isLaunchable () const
 
unsigned char getPriority () const
 

Private Attributes

Any_in
 
Any_out
 
unsigned char _priority
 

Static Private Attributes

static AnyNOT_USED_NOR_COMPUTED = 0
 
static AnyUSED_BUT_NOT_COMPUTED_YET = (Any *) 1
 

Detailed Description

Definition at line 45 of file Pool.hxx.

Constructor & Destructor Documentation

Pool::ExpData::ExpData ( Any inValue,
unsigned char  priority 
)

Definition at line 34 of file Pool.cxx.

References _in, and YACS::ENGINE::RefCounter::incrRef().

34  :_in(inValue),_out(NOT_USED_NOR_COMPUTED),_priority(priority)
35 {
36  if(_in)
37  _in->incrRef();
38 }
Pool::ExpData::ExpData ( const ExpData other)

Definition at line 40 of file Pool.cxx.

References _in, and YACS::ENGINE::RefCounter::incrRef().

40  :_in(other._in),_out(other._out),_priority(other._priority)
41 {
42  if(_in)
43  _in->incrRef();
44 }
Pool::ExpData::~ExpData ( )

Definition at line 46 of file Pool.cxx.

47 {
48  if(_in)
49  _in->decrRef();
51  _out->decrRef();
52 }

Member Function Documentation

unsigned char YACS::ENGINE::Pool::ExpData::getPriority ( ) const
inline

Definition at line 60 of file Pool.hxx.

60 { return _priority; }
Any* YACS::ENGINE::Pool::ExpData::inValue ( ) const
inline

Definition at line 55 of file Pool.hxx.

55 { return _in; }
bool Pool::ExpData::isLaunchable ( ) const

Definition at line 73 of file Pool.cxx.

74 {
76 }
void Pool::ExpData::markItAsInUse ( )

When called _out is assumed to be equal to 'NOT_USED_NOR_COMPUTED' before call.

Definition at line 68 of file Pool.cxx.

69 {
71 }
Any* YACS::ENGINE::Pool::ExpData::outValue ( ) const
inline

Definition at line 56 of file Pool.hxx.

56 { return _out; }
void Pool::ExpData::setOutValue ( Any outValue)

When used _out is assumed to be equal to 'USED_BUT_NOT_COMPUTED_YET' before call.

Definition at line 57 of file Pool.cxx.

References YACS::ENGINE::RefCounter::incrRef().

58 {
60  _out->decrRef();//should absolutely never happend.
61  _out=outValue;
62  _out->incrRef();
63 }

Member Data Documentation

Any* YACS::ENGINE::Pool::ExpData::_in
private

Definition at line 48 of file Pool.hxx.

Referenced by ExpData().

Any* YACS::ENGINE::Pool::ExpData::_out
private

Definition at line 49 of file Pool.hxx.

unsigned char YACS::ENGINE::Pool::ExpData::_priority
private

Definition at line 50 of file Pool.hxx.

Any * Pool::ExpData::NOT_USED_NOR_COMPUTED = 0
staticprivate

Definition at line 62 of file Pool.hxx.

Any * Pool::ExpData::USED_BUT_NOT_COMPUTED_YET = (Any *) 1
staticprivate

Definition at line 63 of file Pool.hxx.


The documentation for this class was generated from the following files: