NAMD
Public Member Functions | Public Attributes | List of all members
CollectProxyVectorSequence Class Reference

Public Member Functions

 CollectProxyVectorSequence (int nc)
 
CollectVectorVarMsgsubmitData (CollectVectorVarMsg *msg)
 

Public Attributes

ResizeArray< CollectProxyVectorInstance * > data
 

Detailed Description

Definition at line 129 of file ParallelIOMgr.C.

Constructor & Destructor Documentation

◆ CollectProxyVectorSequence()

CollectProxyVectorSequence::CollectProxyVectorSequence ( int  nc)
inline

Definition at line 131 of file ParallelIOMgr.C.

131 : numClients(nc) { ; }

Member Function Documentation

◆ submitData()

CollectVectorVarMsg* CollectProxyVectorSequence::submitData ( CollectVectorVarMsg msg)
inline

Definition at line 133 of file ParallelIOMgr.C.

References CollectProxyVectorInstance::notfree(), CollectProxyVectorInstance::reset(), CollectProxyVectorInstance::seq, CollectVectorVarMsg::seq, and CollectVectorVarMsg::status.

133  {
136  for( ; c != c_e && (*c)->seq != msg->seq; ++c );
137  if ( c == c_e ) {
138  c = data.begin();
139  for( ; c != c_e && (*c)->notfree(); ++c );
140  if ( c == c_e ) {
142  c = data.end() - 1;
143  }
144  (*c)->reset(msg->seq,msg->status,numClients);
145  }
146  if ( (*c)->append(msg) ) {
147  CollectVectorVarMsg *newmsg = (*c)->buildMsg();
148  return newmsg;
149  } else {
150  return 0;
151  }
152  }
ResizeArray< CollectProxyVectorInstance * > data
int add(const Elem &elem)
Definition: ResizeArray.h:101
iterator begin(void)
Definition: ResizeArray.h:36
iterator end(void)
Definition: ResizeArray.h:37
void reset(int s, CollectVectorVarMsg::DataStatus v, int numClients)
Definition: ParallelIOMgr.C:50

Member Data Documentation

◆ data

ResizeArray<CollectProxyVectorInstance*> CollectProxyVectorSequence::data

Definition at line 154 of file ParallelIOMgr.C.


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