#include <vtkSubGroup.h>
This class provides scalable broadcast, reduce, etc. using only a vtkMultiProcessController. It does not require MPI. Users are vtkPKdTree and vtkDistributedDataFilter.
Definition at line 49 of file vtkSubGroup.h.
Public Types | |
enum | { MINOP = 1, MAXOP = 2, SUMOP = 3 } |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
int | Initialize (int p0, int p1, int me, int tag, vtkCommunicator *c) |
int | Gather (int *data, int *to, int length, int root) |
int | Gather (char *data, char *to, int length, int root) |
int | Gather (float *data, float *to, int length, int root) |
int | Broadcast (float *data, int length, int root) |
int | Broadcast (double *data, int length, int root) |
int | Broadcast (int *data, int length, int root) |
int | Broadcast (char *data, int length, int root) |
int | ReduceSum (int *data, int *to, int length, int root) |
int | ReduceMax (float *data, float *to, int length, int root) |
int | ReduceMax (double *data, double *to, int length, int root) |
int | ReduceMax (int *data, int *to, int length, int root) |
int | ReduceMin (float *data, float *to, int length, int root) |
int | ReduceMin (double *data, double *to, int length, int root) |
int | ReduceMin (int *data, int *to, int length, int root) |
int | AllReduceUniqueList (int *list, int len, int **newList) |
int | MergeSortedUnique (int *list1, int len1, int *list2, int len2, int **newList) |
void | setGatherPattern (int root, int length) |
int | getLocalRank (int processID) |
int | Barrier () |
void | PrintSubGroup () const |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkSubGroup * | SafeDownCast (vtkObject *o) |
static vtkSubGroup * | New () |
static int | MakeSortedUnique (int *list, int len, int **newList) |
Public Attributes | |
int | tag |
Protected Member Functions | |
vtkSubGroup () | |
~vtkSubGroup () |
typedef vtkObject vtkSubGroup::Superclass |
anonymous enum |
vtkSubGroup::vtkSubGroup | ( | ) | [protected] |
vtkSubGroup::~vtkSubGroup | ( | ) | [protected] |
virtual const char* vtkSubGroup::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkObject.
static int vtkSubGroup::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkSubGroup::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkSubGroup* vtkSubGroup::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkObject.
virtual void vtkSubGroup::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
static vtkSubGroup* vtkSubGroup::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
int vtkSubGroup::Initialize | ( | int | p0, | |
int | p1, | |||
int | me, | |||
int | tag, | |||
vtkCommunicator * | c | |||
) |
Initialize a communication subgroup for the processes with rank p0 through p1 of the given communicator. (So vtkSubGroup is limited to working with subgroups that are identified by a contiguous set of rank IDs.) The third argument is the callers rank, which must in the range from p0 through p1.
int vtkSubGroup::Gather | ( | int * | data, | |
int * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Gather | ( | char * | data, | |
char * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Gather | ( | float * | data, | |
float * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Broadcast | ( | float * | data, | |
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Broadcast | ( | double * | data, | |
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Broadcast | ( | int * | data, | |
int | length, | |||
int | root | |||
) |
int vtkSubGroup::Broadcast | ( | char * | data, | |
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceSum | ( | int * | data, | |
int * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMax | ( | float * | data, | |
float * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMax | ( | double * | data, | |
double * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMax | ( | int * | data, | |
int * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMin | ( | float * | data, | |
float * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMin | ( | double * | data, | |
double * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::ReduceMin | ( | int * | data, | |
int * | to, | |||
int | length, | |||
int | root | |||
) |
int vtkSubGroup::AllReduceUniqueList | ( | int * | list, | |
int | len, | |||
int ** | newList | |||
) |
int vtkSubGroup::MergeSortedUnique | ( | int * | list1, | |
int | len1, | |||
int * | list2, | |||
int | len2, | |||
int ** | newList | |||
) |
void vtkSubGroup::setGatherPattern | ( | int | root, | |
int | length | |||
) |
int vtkSubGroup::getLocalRank | ( | int | processID | ) |
int vtkSubGroup::Barrier | ( | ) |
void vtkSubGroup::PrintSubGroup | ( | ) | const |
static int vtkSubGroup::MakeSortedUnique | ( | int * | list, | |
int | len, | |||
int ** | newList | |||
) | [static] |
int vtkSubGroup::tag |
Definition at line 101 of file vtkSubGroup.h.