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

SPMD.H File Reference

#include "REAL.H"
#include "Vector.H"
#include "Box.H"
#include "MayDay.H"
#include "RealVect.H"
#include "SPMDI.H"

Include dependency graph for SPMD.H:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Compounds

class  SerialTask

Functions

int procID ()
 local process ID

unsigned int numProc ()
 number of parallel processes

template<class T> int linearSize (const T &inputT)
template<class T> void linearIn (T &a_outputT, const void *const inBuf)
template<class T> void linearOut (void *const a_outBuf, const T &inputT)
template<class T> void broadcast (T &a_inAndOut, int a_src)
 broadcast to every process

template<> int linearSize (const int &a_input)
template<> void linearIn (int &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const int &a_inputT)
template<> int linearSize (const Real &a_input)
template<> void linearIn (Real &a_outputT, const void *const a_inBuf)
template<> void linearOut (void *const a_outBuf, const Real &a_inputT)
template<> int linearSize (const Box &a_input)
template<> void linearIn (Box &a_outputT, const void *const a_inBuf)
template<> void linearOut (void *const a_outBuf, const Box &a_inputT)
template<> int linearSize (const Vector< int > &a_input)
template<> void linearIn (Vector< int > &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const Vector< int > &a_inputT)
template<> int linearSize (const Vector< Real > &a_input)
template<> void linearIn (Vector< Real > &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const Vector< Real > &a_inputT)
template<> int linearSize (const Vector< Box > &a_input)
template<> void linearIn (Vector< Box > &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const Vector< Box > &a_inputT)
template<> int linearSize (const Vector< Vector< Box > > &a_input)
template<> void linearIn (Vector< Vector< Box > > &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const Vector< Vector< Box > > &a_inputT)
template<> int linearSize (const RealVect &vindex)
template<> void linearIn (RealVect &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const RealVect &a_inputT)
template<> int linearSize (const Vector< Vector< int > > &a_input)
template<> void linearIn (Vector< Vector< int > > &a_outputT, const void *const inBuf)
template<> void linearOut (void *const a_outBuf, const Vector< Vector< int > > &a_inputT)
template<class T> int linearListSize (const Vector< T > &a_input)
template<class T> void linearListIn (Vector< T > &a_outputT, const void *const a_inBuf)
template<class T> void linearListOut (void *const a_outBuf, const Vector< T > &a_inputT)
int uniqueProc (const SerialTask::task &a_task)

Variables

int num_procs


Function Documentation

template<class T>
void broadcast (  T &  a_inAndOut,
int  a_src
)  [inline]
 

broadcast to every process

Broadcasts a_inAndOut to every process from process number a_src. It is an error if a_src < 0 or a_src >= numProc(). \

T must have have the following functions: \

int linearSize<T>(const T& inputT); \ void linearIn<T>(T& a_outputT, const void* const inBuf); \ void linearOut<T>(void* a_outBuf, const T& inputT); \

template<>
void linearIn (  Vector< Vector< int > > &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  RealVect &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  Vector< Vector< Box > > &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  Vector< Box > &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  Vector< Real > &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  Vector< int > &  a_outputT,
const void *const  inBuf
) 
 

template<>
void linearIn (  Box &  a_outputT,
const void *const  a_inBuf
) 
 

template<>
void linearIn (  Real &  a_outputT,
const void *const  a_inBuf
) 
 

template<>
void linearIn (  int &  a_outputT,
const void *const  inBuf
) 
 

template<class T>
void linearIn (  T &  a_outputT,
const void *const  inBuf
) 
 

template<class T>
void linearListIn (  Vector< T > &  a_outputT,
const void *const  a_inBuf
) 
 

template<class T>
void linearListOut (  void *const  a_outBuf,
const Vector< T > &  a_inputT
) 
 

template<class T>
int linearListSize (  const Vector< T > &  a_input  ) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Vector< Vector< int > > &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const RealVect &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Vector< Vector< Box > > &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Vector< Box > &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Vector< Real > &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Vector< int > &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Box &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const Real &  a_inputT
) 
 

template<>
void linearOut (  void *const  a_outBuf,
const int &  a_inputT
) 
 

template<class T>
void linearOut (  void *const  a_outBuf,
const T &  inputT
) 
 

template<>
int linearSize (  const Vector< Vector< int > > &  a_input  ) 
 

template<>
int linearSize (  const RealVect &  vindex  ) 
 

template<>
int linearSize (  const Vector< Vector< Box > > &  a_input  ) 
 

template<>
int linearSize (  const Vector< Box > &  a_input  ) 
 

template<>
int linearSize (  const Vector< Real > &  a_input  ) 
 

template<>
int linearSize (  const Vector< int > &  a_input  ) 
 

template<>
int linearSize (  const Box &  a_input  ) 
 

template<>
int linearSize (  const Real &  a_input  ) 
 

template<>
int linearSize (  const int &  a_input  ) 
 

template<class T>
int linearSize (  const T &  inputT  ) 
 

unsigned int numProc (   ) 
 

number of parallel processes

Returns the number of parallel processes running. Always returns at least 1.

int procID (   ) 
 

local process ID

Returns the ID of the locally running process in the range 0 <= procID() < numProc(). This has no relation to the operating system pid. There is always a procID() == 0.

int uniqueProc (  const SerialTask::task &  a_task  ) 
 


Variable Documentation

int num_procs
 


Generated on Wed Jun 2 13:57:55 2004 for Chombo&INSwithParticles by doxygen 1.3.2