NAMD
Public Member Functions | List of all members
ComputeSelfTuples< T, S, P > Class Template Reference

#include <ComputeSelfTuples.h>

Inheritance diagram for ComputeSelfTuples< T, S, P >:
ComputeHomeTuples< T, S, P > Compute

Public Member Functions

 ComputeSelfTuples (ComputeID c, PatchID p)
 
virtual ~ComputeSelfTuples ()
 
virtual void initialize (void)
 
void doWork (void)
 
- Public Member Functions inherited from ComputeHomeTuples< T, S, P >
virtual ~ComputeHomeTuples ()
 
void atomUpdate (void)
 
- Public Member Functions inherited from Compute
 Compute (ComputeID)
 
int type ()
 
virtual ~Compute ()
 
void setNumPatches (int n)
 
int getNumPatches ()
 
virtual void patchReady (PatchID, int doneMigration, int seq)
 
virtual int noWork ()
 
virtual void finishPatch (int)
 
int sequence (void)
 
int priority (void)
 
int getGBISPhase (void)
 
virtual void gbisP2PatchReady (PatchID, int seq)
 
virtual void gbisP3PatchReady (PatchID, int seq)
 

Additional Inherited Members

- Public Attributes inherited from Compute
const ComputeID cid
 
LDObjHandle ldObjHandle
 
LocalWorkMsg *const localWorkMsg
 
- Protected Member Functions inherited from ComputeHomeTuples< T, S, P >
 ComputeHomeTuples (ComputeID c)
 
 ComputeHomeTuples (ComputeID c, PatchIDList &pids)
 
- Protected Member Functions inherited from Compute
void enqueueWork ()
 
- Protected Attributes inherited from ComputeHomeTuples< T, S, P >
int doLoadTuples
 
ResizeArray< T > tupleList
 
TuplePatchList tuplePatchList
 
PatchMappatchMap
 
AtomMapatomMap
 
SubmitReductionreduction
 
int accelMDdoDihe
 
SubmitReductionpressureProfileReduction
 
BigRealpressureProfileData
 
int pressureProfileSlabs
 
char * isBasePatch
 
- Protected Attributes inherited from Compute
int computeType
 
int basePriority
 
int gbisPhase
 
int gbisPhasePriority [3]
 

Detailed Description

template<class T, class S, class P>
class ComputeSelfTuples< T, S, P >

Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.

Definition at line 191 of file ComputeSelfTuples.h.

Constructor & Destructor Documentation

◆ ComputeSelfTuples()

template<class T, class S, class P>
ComputeSelfTuples< T, S, P >::ComputeSelfTuples ( ComputeID  c,
PatchID  p 
)
inline

Definition at line 350 of file ComputeSelfTuples.h.

351  patchID = p;
352  }

◆ ~ComputeSelfTuples()

template<class T, class S, class P>
virtual ComputeSelfTuples< T, S, P >::~ComputeSelfTuples ( )
inlinevirtual

Definition at line 354 of file ComputeSelfTuples.h.

354  {
356  for (ap = ap.begin(); ap != ap.end(); ap++) {
357  ap->p->unregisterPositionPickup(this,&(ap->positionBox));
358  ap->p->unregisterAvgPositionPickup(this,&(ap->avgPositionBox));
359  ap->p->unregisterForceDeposit(this,&(ap->forceBox));
360  }
361  }
TuplePatchList tuplePatchList

Member Function Documentation

◆ doWork()

template<class T, class S, class P>
void ComputeSelfTuples< T, S, P >::doWork ( void  )
inlinevirtual

Reimplemented from ComputeHomeTuples< T, S, P >.

Definition at line 392 of file ComputeSelfTuples.h.

392  {
393 // LdbCoordinator::Object()->startWork(this->ldObjHandle);
394 
395 #ifdef TRACE_COMPUTE_OBJECTS
396  double traceObjStartTime = CmiWallTimer();
397 #endif
398 
400 
401 #ifdef TRACE_COMPUTE_OBJECTS
402  traceUserBracketEvent(TRACE_COMPOBJ_IDOFFSET+this->cid, traceObjStartTime, CmiWallTimer());
403 #endif
404 
405 // LdbCoordinator::Object()->endWork(this->ldObjHandle);
406  }
#define TRACE_COMPOBJ_IDOFFSET
Definition: Compute.h:77
virtual void doWork(void)
const ComputeID cid
Definition: Compute.h:43

◆ initialize()

template<class T, class S, class P>
virtual void ComputeSelfTuples< T, S, P >::initialize ( void  )
inlinevirtual

Reimplemented from ComputeHomeTuples< T, S, P >.

Definition at line 368 of file ComputeSelfTuples.h.

368  {
369 #ifdef USE_HOMETUPLES
370  this->tuples = new SelfTuples<T, S, P>();
371 #endif
372  // Start with empty list
373  this->tuplePatchList.clear();
374 
376 
377  this->setNumPatches(this->tuplePatchList.size());
378 
379  this->doLoadTuples = true;
380 
381  int myNode = CkMyPe();
382  if ( PatchMap::Object()->node(patchID) != myNode )
383  {
385  }
386  else
387  {
389  }
390  }
void setNumPatches(int n)
Definition: Compute.h:52
#define COMPUTE_PROXY_PRIORITY
Definition: Priorities.h:71
int size(void) const
Definition: UniqueSet.h:58
void clear(void)
Definition: UniqueSet.h:62
static PatchMap * Object()
Definition: PatchMap.h:27
TuplePatchList tuplePatchList
int add(const Elem &elem)
Definition: UniqueSet.h:52
#define COMPUTE_HOME_PRIORITY
Definition: Priorities.h:76
int basePriority
Definition: Compute.h:37
#define PATCH_PRIORITY(PID)
Definition: Priorities.h:25

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