¥¯¥é¥¹ Onikiri::Dependency

#include <Dependency.h>

Onikiri::Dependency¤ËÂФ¹¤ë·Ñ¾µ¥°¥é¥Õ

Inheritance graph
[ËÞÎã]
Onikiri::Dependency¤Î¥³¥é¥Ü¥ì¡¼¥·¥ç¥ó¿Þ

Collaboration graph
[ËÞÎã]
¤¹¤Ù¤Æ¤Î¥á¥ó¥Ð°ìÍ÷

Public ·¿

typedef ConsumerListType::const_iterator ConsumerListConstIterator
typedef ConsumerListType::iterator ConsumerListIterator
typedef pool_list< OpIteratorConsumerListType

Public ¥á¥½¥Ã¥É

void AddConsumer (OpIterator op)
void Clear ()
 Dependency (int numScheduler)
 Dependency ()
const ConsumerListTypeGetConsumers () const
bool GetReadiness (const int index) const
bool IsFullyReady () const
void RemoveConsumer (OpIterator op)
void Reset ()
void Set ()
void SetReadiness (const bool readiness, const int index)
virtual ~Dependency ()

Protected ÊÑ¿ô

ConsumerListType m_consumer
boost::dynamic_bitset< u32,
boost::fast_pool_allocator<
u32 > > 
m_readiness

ÀâÌÀ

Dependency.h ¤Î 45 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£


·¿ÄêµÁ

typedef ConsumerListType::const_iterator Onikiri::Dependency::ConsumerListConstIterator

Dependency.h ¤Î 54 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

typedef ConsumerListType::iterator Onikiri::Dependency::ConsumerListIterator

Dependency.h ¤Î 51 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

typedef pool_list<OpIterator> Onikiri::Dependency::ConsumerListType

Dependency.h ¤Î 48 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£


¥³¥ó¥¹¥È¥é¥¯¥¿¤È¥Ç¥¹¥È¥é¥¯¥¿

Dependency::Dependency (  ) 

Dependency.cpp ¤Î 43 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

00044 : m_readiness(0, false)
00045 {
00046 }

Dependency::Dependency ( int  numScheduler  ) 

Dependency.cpp ¤Î 48 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

00049 : m_readiness(numScheduler, false)
00050 {
00051 }

Dependency::~Dependency (  )  [virtual]

Dependency.cpp ¤Î 53 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

00054 {
00055 }


´Ø¿ô

void Dependency::AddConsumer ( OpIterator  op  ) 

Dependency.cpp ¤Î 57 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_consumer.

»²¾È¸µ Onikiri::Op::SetSrcReg().

00058 {
00059     // Šù‚É consumer ‚Æ‚µ‚Ä“o˜^‚³‚ê‚Ä‚¢‚È‚¯‚ê‚Γo˜^
00060     Dependency::ConsumerListType::iterator i = find(m_consumer.begin(), m_consumer.end(), op);
00061     if( i == m_consumer.end() ) {
00062         m_consumer.push_back(op);
00063     }
00064 }

Here is the caller graph for this function:

void Dependency::Clear (  ) 

Dependency.cpp ¤Î 84 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_consumer¡¦m_readiness.

»²¾È¸µ Onikiri::RMT::AllocateRegBody()¡¦Onikiri::RMT::Initialize().

00085 {
00086     m_readiness.reset();
00087     m_consumer.clear();
00088 }

Here is the caller graph for this function:

const ConsumerListType& Onikiri::Dependency::GetConsumers (  )  const [inline]

Dependency.h ¤Î 70 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_consumer.

»²¾È¸µ Onikiri::Op::GetFirstConsumer().

00071         {
00072             return m_consumer;
00073         }

Here is the caller graph for this function:

bool Onikiri::Dependency::GetReadiness ( const int  index  )  const [inline]

Dependency.h ¤Î 75 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_readiness.

00076         {
00077             return m_readiness.test( index );
00078         }

bool Onikiri::Dependency::IsFullyReady (  )  const [inline]

Dependency.h ¤Î 80 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_readiness.

00081         {
00082             for( size_t i = 0; i < m_readiness.size(); ++i ){
00083                 if( !m_readiness.test(i) )
00084                     return false;
00085             }
00086             return true;
00087         }

void Dependency::RemoveConsumer ( OpIterator  op  ) 

Dependency.cpp ¤Î 66 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_consumer.

00067 {
00068     Dependency::ConsumerListType::iterator i = find(m_consumer.begin(), m_consumer.end(), op);
00069     if( i != m_consumer.end() ) {
00070         m_consumer.erase(i);
00071     }
00072 }

void Dependency::Reset (  ) 

Dependency.cpp ¤Î 79 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_readiness.

00080 {
00081     m_readiness.reset();
00082 }

void Dependency::Set (  ) 

Dependency.cpp ¤Î 74 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_readiness.

»²¾È¸µ Onikiri::RMT::Initialize()¡¦Onikiri::SystemManager::SetSimulationContext().

00075 {
00076     m_readiness.set();
00077 }

Here is the caller graph for this function:

void Onikiri::Dependency::SetReadiness ( const bool  readiness,
const int  index 
) [inline]

Dependency.h ¤Î 89 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾ÈÀè m_readiness.

00090         {
00091             m_readiness.set( index, readiness );
00092         }


ÊÑ¿ô

ConsumerListType Onikiri::Dependency::m_consumer [protected]

Dependency.h ¤Î 102 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾È¸µ AddConsumer()¡¦Clear()¡¦GetConsumers()¡¦RemoveConsumer().

boost::dynamic_bitset< u32, boost::fast_pool_allocator<u32> > Onikiri::Dependency::m_readiness [protected]

Dependency.h ¤Î 99 ¹Ô¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

»²¾È¸µ Clear()¡¦GetReadiness()¡¦IsFullyReady()¡¦Reset()¡¦Set()¡¦SetReadiness().


¤³¤Î¥¯¥é¥¹¤ÎÀâÌÀ¤Ï¼¡¤Î¥Õ¥¡¥¤¥ë¤«¤éÀ¸À®¤µ¤ì¤Þ¤·¤¿:
Onikiri2¤ËÂФ·¤ÆTue Jun 18 14:55:54 2013¤ËÀ¸À®¤µ¤ì¤Þ¤·¤¿¡£  doxygen 1.4.7