Version: 9.15.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

◆ ExpData() [1/2]

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

Definition at line 34 of file Pool.cxx.

35 {
36  if(_in)
37  _in->incrRef();
38 }
unsigned char _priority
Definition: Pool.hxx:50
static Any * NOT_USED_NOR_COMPUTED
Definition: Pool.hxx:62
Any * inValue() const
Definition: Pool.hxx:55

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

◆ ExpData() [2/2]

Pool::ExpData::ExpData ( const ExpData other)

Definition at line 40 of file Pool.cxx.

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

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

◆ ~ExpData()

Pool::ExpData::~ExpData ( )

Definition at line 46 of file Pool.cxx.

47 {
48  if(_in)
49  _in->decrRef();
51  _out->decrRef();
52 }
static Any * USED_BUT_NOT_COMPUTED_YET
Definition: Pool.hxx:63

Member Function Documentation

◆ getPriority()

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

Definition at line 60 of file Pool.hxx.

60 { return _priority; }

◆ inValue()

Any* YACS::ENGINE::Pool::ExpData::inValue ( ) const
inline

Definition at line 55 of file Pool.hxx.

55 { return _in; }

◆ isLaunchable()

bool Pool::ExpData::isLaunchable ( ) const

Definition at line 73 of file Pool.cxx.

74 {
76 }

◆ markItAsInUse()

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 }

◆ outValue()

Any* YACS::ENGINE::Pool::ExpData::outValue ( ) const
inline

Definition at line 56 of file Pool.hxx.

56 { return _out; }

◆ setOutValue()

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.

58 {
60  _out->decrRef();//should absolutely never happend.
61  _out=outValue;
62  _out->incrRef();
63 }
Any * outValue() const
Definition: Pool.hxx:56

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

Member Data Documentation

◆ _in

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

Definition at line 48 of file Pool.hxx.

Referenced by ExpData().

◆ _out

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

Definition at line 49 of file Pool.hxx.

◆ _priority

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

Definition at line 50 of file Pool.hxx.

◆ NOT_USED_NOR_COMPUTED

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

Definition at line 62 of file Pool.hxx.

◆ USED_BUT_NOT_COMPUTED_YET

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: