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 124 of file ParallelIOMgr.C.

Constructor & Destructor Documentation

◆ CollectProxyVectorSequence()

CollectProxyVectorSequence::CollectProxyVectorSequence ( int  nc)
inline

Definition at line 126 of file ParallelIOMgr.C.

126 : numClients(nc) { ; }

Member Function Documentation

◆ submitData()

CollectVectorVarMsg* CollectProxyVectorSequence::submitData ( CollectVectorVarMsg msg)
inline

Definition at line 128 of file ParallelIOMgr.C.

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

128  {
131  for( ; c != c_e && (*c)->seq != msg->seq; ++c );
132  if ( c == c_e ) {
133  c = data.begin();
134  for( ; c != c_e && (*c)->notfree(); ++c );
135  if ( c == c_e ) {
137  c = data.end() - 1;
138  }
139  (*c)->reset(msg->seq,msg->status,numClients);
140  }
141  if ( (*c)->append(msg) ) {
142  CollectVectorVarMsg *newmsg = (*c)->buildMsg();
143  return newmsg;
144  } else {
145  return 0;
146  }
147  }
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:45

Member Data Documentation

◆ data

ResizeArray<CollectProxyVectorInstance*> CollectProxyVectorSequence::data

Definition at line 149 of file ParallelIOMgr.C.


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