AVIabstractMain Class Reference

Common functionality for different versions and algorithms. More...

#include <AVIabstractMain.h>

Inheritance diagram for AVIabstractMain:
AVIorderedSerial AVIunordered AVIunorderedNoLock

List of all members.

Classes

struct  InputConfig

Public Member Functions

virtual void runLoop (MeshInit &meshInit, GlobalVec &g, bool createSyncFiles)=0
void run (int argc, const char *argv[])
 The main method to call.
void verify (const InputConfig &input, const MeshInit &meshInit, const GlobalVec &g) const

Static Public Member Functions

static void simulate (AVI *avi, MeshInit &meshInit, GlobalVec &g, LocalVec &l, bool createSyncFiles)
 Code common to loop body of different versions Performs the updates to avi parameter.

Protected Member Functions

virtual const std::string getVersion () const =0
 version name
virtual void initRemaining (const MeshInit &meshInit, const GlobalVec &g)=0
 To be implemented by derived classes for some type specific initialization e.g.

Static Private Member Functions

static const std::string getUsage ()
static void printUsage ()
static InputConfig readCmdLine (std::vector< const char * > args)
static MeshInitinitMesh (const InputConfig &input)
static void initGlobalVec (const MeshInit &meshInit, GlobalVec &g)

Detailed Description

Common functionality for different versions and algorithms.


Member Function Documentation

const std::string AVIabstractMain::getUsage (  )  [static, private]
virtual const std::string AVIabstractMain::getVersion (  )  const [protected, pure virtual]

version name

Implemented in AVIorderedSerial, AVIunordered, and AVIunorderedNoLock.

void AVIabstractMain::initGlobalVec ( const MeshInit meshInit,
GlobalVec g 
) [static, private]
MeshInit * AVIabstractMain::initMesh ( const InputConfig input  )  [static, private]
virtual void AVIabstractMain::initRemaining ( const MeshInit meshInit,
const GlobalVec g 
) [protected, pure virtual]

To be implemented by derived classes for some type specific initialization e.g.

unordered needs element adjacency graph while ordered needs a lock per node of the original mesh.

Parameters:
meshInit 
g 

Implemented in AVIorderedSerial, and AVIunordered.

void AVIabstractMain::printUsage (  )  [static, private]
AVIabstractMain::InputConfig AVIabstractMain::readCmdLine ( std::vector< const char * >  args  )  [static, private]
void AVIabstractMain::run ( int  argc,
const char *  argv[] 
)

The main method to call.

Parameters:
argc 
argv 
virtual void AVIabstractMain::runLoop ( MeshInit meshInit,
GlobalVec g,
bool  createSyncFiles 
) [pure virtual]
Parameters:
meshInit 
g 
createSyncFiles 

Implemented in AVIorderedSerial, AVIunordered, and AVIunorderedNoLock.

void AVIabstractMain::simulate ( AVI avi,
MeshInit meshInit,
GlobalVec g,
LocalVec l,
bool  createSyncFiles 
) [inline, static]

Code common to loop body of different versions Performs the updates to avi parameter.

Parameters:
avi 
meshInit 
g 
l 
createSyncFiles 
void AVIabstractMain::verify ( const InputConfig input,
const MeshInit meshInit,
const GlobalVec g 
) const

The documentation for this class was generated from the following file:
Generated on Tue Aug 2 11:51:26 2011 for Galois by  doxygen 1.6.3