Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

ComputeSelfTuples< T, S, P > Class Template Reference

#include <ComputeSelfTuples.h>

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

ComputeHomeTuples< T, S, P > Compute List of all members.

Public Member Functions

 ComputeSelfTuples (ComputeID c, PatchID p)
virtual ~ComputeSelfTuples ()
virtual void initialize (void)
void doWork (void)

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 13 of file ComputeSelfTuples.h.


Constructor & Destructor Documentation

template<class T, class S, class P>
ComputeSelfTuples< T, S, P >::ComputeSelfTuples ComputeID  c,
PatchID  p
[inline]
 

Definition at line 108 of file ComputeSelfTuples.h.

00108                                               : ComputeHomeTuples<T,S,P>(c) {
00109       patchID = p;
00110     }

template<class T, class S, class P>
virtual ComputeSelfTuples< T, S, P >::~ComputeSelfTuples  )  [inline, virtual]
 

Definition at line 112 of file ComputeSelfTuples.h.

00112                                  {
00113       UniqueSetIter<TuplePatchElem> ap(this->tuplePatchList);
00114       for (ap = ap.begin(); ap != ap.end(); ap++) {
00115         ap->p->unregisterPositionPickup(this->cid,&(ap->positionBox));
00116         ap->p->unregisterAvgPositionPickup(this->cid,&(ap->avgPositionBox));
00117         ap->p->unregisterForceDeposit(this->cid,&(ap->forceBox));
00118       }
00119     }


Member Function Documentation

template<class T, class S, class P>
void ComputeSelfTuples< T, S, P >::doWork void   )  [inline, virtual]
 

Reimplemented from ComputeHomeTuples< T, S, P >.

Definition at line 147 of file ComputeSelfTuples.h.

00147                       {
00148       LdbCoordinator::Object()->startWork(this->cid,0); // Timestep not used
00149 
00150 #ifdef TRACE_COMPUTE_OBJECTS
00151     double traceObjStartTime = CmiWallTimer();
00152 #endif
00153 
00154       ComputeHomeTuples<T,S,P>::doWork();
00155 
00156 #ifdef TRACE_COMPUTE_OBJECTS
00157     traceUserBracketEvent(TRACE_COMPOBJ_IDOFFSET+this->cid, traceObjStartTime, CmiWallTimer());
00158 #endif
00159 
00160       LdbCoordinator::Object()->endWork(this->cid,0); // Timestep not used
00161     }

template<class T, class S, class P>
virtual void ComputeSelfTuples< T, S, P >::initialize void   )  [inline, virtual]
 

Reimplemented from ComputeHomeTuples< T, S, P >.

Definition at line 126 of file ComputeSelfTuples.h.

00126                                   {
00127     
00128       // Start with empty list
00129       this->tuplePatchList.clear();
00130     
00131       this->tuplePatchList.add(TuplePatchElem(ComputeHomeTuples<T,S,P>::patchMap->patch(patchID), this->cid));
00132     
00133       setNumPatches(this->tuplePatchList.size());
00134       this->doLoadTuples = true;
00135 
00136       int myNode = CkMyPe();
00137       if ( PatchMap::Object()->node(patchID) != myNode )
00138       {
00139         this->basePriority = COMPUTE_PROXY_PRIORITY + PATCH_PRIORITY(patchID);
00140       }
00141       else
00142       {
00143         this->basePriority = COMPUTE_HOME_PRIORITY + PATCH_PRIORITY(patchID);
00144       }
00145     }


The documentation for this class was generated from the following file:
Generated on Fri Jul 25 04:07:21 2008 for NAMD by  doxygen 1.3.9.1