ActiViz .NET
5.8.0
|
vtkMultiProcessController - Multiprocessing communication superclass More...
Public Types | |
enum | Consts { ANY_SOURCE = -1, INVALID_SOURCE = -2 } |
Accessor to some default tags. More... | |
enum | Errors { RMI_ARG_ERROR = 2, RMI_NO_ERROR = 0, RMI_TAG_ERROR = 1 } |
Accessor to some default tags. More... | |
enum | Tags { BREAK_RMI_TAG = 3, RMI_ARG_TAG = 2, RMI_TAG = 1, XML_WRITER_DATA_INFO = 4 } |
Accessor to some default tags. More... | |
Public Member Functions | |
vtkMultiProcessController (IntPtr rawCppThis, bool callDisposalMethod, bool strong) | |
Automatically generated constructor - called from generated code. DO NOT call directly. | |
int | AllGather (IntPtr sendBuffer, IntPtr recvBuffer, int length) |
Same as gather except that the result ends up on all processes. | |
int | AllGather (string sendBuffer, string recvBuffer, int length) |
Same as gather except that the result ends up on all processes. | |
int | AllGather (vtkDataArray sendBuffer, vtkDataArray recvBuffer) |
Same as gather except that the result ends up on all processes. | |
int | AllGatherV (IntPtr sendBuffer, IntPtr recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets) |
Same as GatherV except that the result is placed in all processes. | |
int | AllGatherV (string sendBuffer, string recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets) |
Same as GatherV except that the result is placed in all processes. | |
int | AllGatherV (vtkDataArray sendBuffer, vtkDataArray recvBuffer, IntPtr recvLengths, IntPtr offsets) |
Same as GatherV except that the result is placed in all processes. | |
int | AllGatherV (vtkDataArray sendBuffer, vtkDataArray recvBuffer) |
This special form of AllGatherV will automatically determine recvLengths and offsets to tightly pack the data in the recvBuffer in process order. It will also resize recvBuffer in order to accommodate the incoming data (unlike the other GatherV variants). | |
int | AllReduce (IntPtr sendBuffer, IntPtr recvBuffer, int length, int operation) |
Same as Reduce except that the result is placed in all of the processes. | |
int | AllReduce (string sendBuffer, string recvBuffer, int length, int operation) |
Same as Reduce except that the result is placed in all of the processes. | |
int | AllReduce (vtkDataArray sendBuffer, vtkDataArray recvBuffer, int operation) |
Same as Reduce except that the result is placed in all of the processes. | |
void | Barrier () |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Broadcast (IntPtr data, int length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. All processes must call these method with the same arguments in order for it to complete. | |
int | Broadcast (string data, int length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. All processes must call these method with the same arguments in order for it to complete. | |
int | Broadcast (vtkDataObject data, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. All processes must call these method with the same arguments in order for it to complete. | |
int | Broadcast (vtkDataArray data, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. All processes must call these method with the same arguments in order for it to complete. | |
virtual void | CreateOutputWindow () |
This method can be used to tell the controller to create a special output window in which all messages are preceded by the process id. | |
virtual vtkMultiProcessController | CreateSubController (vtkProcessGroup group) |
Creates a new controller with the processes specified by the given group. The new controller will already be initialized for you. You are responsible for deleting the controller once you are done. It is invalid to pass this method a group with a different communicator than is used by this controller. This operation is collective accross all processes defined in the group. It is undefined what will happen if the group is not the same on all processes. This method must be called by all processes in the controller regardless of whether they are in the group. NULL is returned on all process not in the group. | |
virtual void | FinalizeWrapper () |
This method is for cleaning up. If a subclass needs to clean up process communication (i.e. MPI) it would over ride this method. | |
virtual void | FinalizeWrapper (int finalizedExternally) |
This method is for cleaning up. If a subclass needs to clean up process communication (i.e. MPI) it would over ride this method. Provided for finalization outside vtk. | |
int | Gather (IntPtr sendBuffer, IntPtr recvBuffer, int length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer (on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter. | |
int | Gather (string sendBuffer, string recvBuffer, int length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer (on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter. | |
int | Gather (vtkDataArray sendBuffer, vtkDataArray recvBuffer, int destProcessId) |
Gather collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer (on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter. | |
int | GatherV (IntPtr sendBuffer, IntPtr recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength argument defines how much the local process sends to destProcessId and recvLengths is an array containing the amount destProcessId receives from each process, in rank order. | |
int | GatherV (string sendBuffer, string recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength argument defines how much the local process sends to destProcessId and recvLengths is an array containing the amount destProcessId receives from each process, in rank order. | |
int | GatherV (vtkDataArray sendBuffer, vtkDataArray recvBuffer, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId . Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength argument defines how much the local process sends to destProcessId and recvLengths is an array containing the amount destProcessId receives from each process, in rank order. | |
int | GatherV (vtkDataArray sendBuffer, vtkDataArray recvBuffer, int destProcessId) |
This special form of GatherV will automatically determine recvLengths and offsets to tightly pack the data in the recvBuffer in process order. It will also resize recvBuffer in order to accommodate the incoming data (unlike the other GatherV variants). | |
virtual int | GetBreakFlag () |
Setting this flag to 1 will cause the ProcessRMIs loop to return. This also causes vtkUpStreamPorts to return from their WaitForUpdate loops. | |
virtual vtkCommunicator | GetCommunicator () |
Returns the communicator associated with this controller. A default communicator is created in constructor. | |
int | GetCount () |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | GetLocalProcessId () |
Tells you which process [0, NumProcess) you are in. | |
int | GetNumberOfProcesses () |
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error. | |
override int | IsA (string type) |
Undocumented Block. | |
virtual void | MultipleMethodExecute () |
Execute the MultipleMethods (as define by calling SetMultipleMethod for each of the required this->NumberOfProcesses methods) using this->NumberOfProcesses processes. | |
new vtkMultiProcessController | NewInstance () |
Undocumented Block. | |
virtual vtkMultiProcessController | PartitionController (int localColor, int localKey) |
Partitions this controller based on a coloring. That is, each process passes in a color. All processes with the same color are grouped into the same partition. The processes are ordered by their self-assigned key. Lower keys have lower process ids. Ties are broken by the current process ids. (For example, if all the keys are 0, then the resulting processes will be ordered in the same way.) This method returns a new controller to each process that represents the local partition. This is basically the same operation as MPI_Comm_split. | |
int | ProcessRMIs (int reportErrors, int dont_loop) |
Calling this method gives control to the controller to start processing RMIs. Possible return values are: RMI_NO_ERROR, RMI_TAG_ERROR : rmi tag could not be received, RMI_ARG_ERROR : rmi arg could not be received. If reportErrors is false, no vtkErrorMacro is called. ProcessRMIs() calls ProcessRMIs(int) with reportErrors = 0. If dont_loop is 1, this call just process one RMI message and exits. | |
int | ProcessRMIs () |
Calling this method gives control to the controller to start processing RMIs. Possible return values are: RMI_NO_ERROR, RMI_TAG_ERROR : rmi tag could not be received, RMI_ARG_ERROR : rmi arg could not be received. If reportErrors is false, no vtkErrorMacro is called. ProcessRMIs() calls ProcessRMIs(int) with reportErrors = 0. If dont_loop is 1, this call just process one RMI message and exits. | |
int | Receive (IntPtr data, int length, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Receive (string data, int length, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Receive (vtkDataObject data, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Receive (vtkDataArray data, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
vtkDataObject | ReceiveDataObject (int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Reduce (IntPtr sendBuffer, IntPtr recvBuffer, int length, int operation, int destProcessId) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation. | |
int | Reduce (string sendBuffer, string recvBuffer, int length, int operation, int destProcessId) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation. | |
int | Reduce (vtkDataArray sendBuffer, vtkDataArray recvBuffer, int operation, int destProcessId) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation. | |
void | RemoveAllRMICallbacks (int tag) |
int | RemoveFirstRMI (int tag) |
int | RemoveRMI (uint id) |
bool | RemoveRMICallback (uint id) |
int | Scatter (IntPtr sendBuffer, IntPtr recvBuffer, int length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length values, process 1 receives the second length values, and so on. Scatter is the inverse operation of Gather. | |
int | Scatter (string sendBuffer, string recvBuffer, int length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length values, process 1 receives the second length values, and so on. Scatter is the inverse operation of Gather. | |
int | Scatter (vtkDataArray sendBuffer, vtkDataArray recvBuffer, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length values, process 1 receives the second length values, and so on. Scatter is the inverse operation of Gather. | |
int | ScatterV (IntPtr sendBuffer, IntPtr recvBuffer, IntPtr sendLengths, IntPtr offsets, int recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths and offsets arrays. | |
int | ScatterV (string sendBuffer, string recvBuffer, IntPtr sendLengths, IntPtr offsets, int recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths and offsets arrays. | |
int | Send (IntPtr data, int length, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Send (string data, int length, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Send (vtkDataObject data, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
int | Send (vtkDataArray data, int remoteProcessId, int tag) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them. | |
virtual void | SetBreakFlag (int _arg) |
Setting this flag to 1 will cause the ProcessRMIs loop to return. This also causes vtkUpStreamPorts to return from their WaitForUpdate loops. | |
void | SetNumberOfProcesses (int num) |
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error. | |
void | SetSingleProcessObject (vtkProcess p) |
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error. | |
virtual void | SingleMethodExecute () |
Execute the SingleMethod (as define by SetSingleMethod) using this->NumberOfProcesses processes. This will only return when all the processes finish executing their methods. | |
void | TriggerBreakRMIs () |
A conveniance method. Called on process 0 to break "ProcessRMIs" loop on all other processes. | |
void | TriggerRMI (int remoteProcessId, IntPtr arg, int argLength, int tag) |
A method to trigger a method invocation in another process. | |
void | TriggerRMI (int remoteProcessId, string arg, int tag) |
Convenience method when the arg is a string. | |
void | TriggerRMI (int remoteProcessId, int tag) |
Convenience method when there is no argument. | |
void | TriggerRMIOnAllChildren (IntPtr arg, int argLength, int tag) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node. | |
void | TriggerRMIOnAllChildren (string arg, int tag) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node. | |
void | TriggerRMIOnAllChildren (int tag) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node. | |
Static Public Member Functions | |
static int | GetBreakRMITag () |
Accessor to some default tags. | |
static vtkMultiProcessController | GetGlobalController () |
This convenience method returns the controller associated with the local process. It returns NULL until the processes are spawned. It is better if you hang on to the controller passed as an argument to the SingleMethod or MultipleMethod functions. | |
static int | GetRMIArgTag () |
Accessor to some default tags. | |
static int | GetRMITag () |
Accessor to some default tags. | |
static new int | IsTypeOf (string type) |
Undocumented Block. | |
static new vtkMultiProcessController | SafeDownCast (vtkObjectBase o) |
Undocumented Block. | |
static void | SetGlobalController (vtkMultiProcessController controller) |
This method can be used to synchronize processes. | |
Public Attributes | |
new const string | MRFullTypeName = "Kitware.VTK.vtkMultiProcessController" |
Automatically generated type registration mechanics. | |
Static Public Attributes | |
static new readonly string | MRClassNameKey = "25vtkMultiProcessController" |
Automatically generated type registration mechanics. | |
Protected Member Functions | |
override void | Dispose (bool disposing) |
Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly. | |
Private Member Functions | |
static internal int | vtkMultiProcessController_AllGather_01 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int length) |
static internal int | vtkMultiProcessController_AllGather_02 (HandleRef pThis, string sendBuffer, string recvBuffer, int length) |
static internal int | vtkMultiProcessController_AllGather_03 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer) |
static internal int | vtkMultiProcessController_AllGatherV_04 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets) |
static internal int | vtkMultiProcessController_AllGatherV_05 (HandleRef pThis, string sendBuffer, string recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets) |
static internal int | vtkMultiProcessController_AllGatherV_06 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, IntPtr recvLengths, IntPtr offsets) |
static internal int | vtkMultiProcessController_AllGatherV_07 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer) |
static internal int | vtkMultiProcessController_AllReduce_08 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int length, int operation) |
static internal int | vtkMultiProcessController_AllReduce_09 (HandleRef pThis, string sendBuffer, string recvBuffer, int length, int operation) |
static internal int | vtkMultiProcessController_AllReduce_10 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, int operation) |
static internal void | vtkMultiProcessController_Barrier_11 (HandleRef pThis) |
static internal int | vtkMultiProcessController_Broadcast_12 (HandleRef pThis, IntPtr data, int length, int srcProcessId) |
static internal int | vtkMultiProcessController_Broadcast_13 (HandleRef pThis, string data, int length, int srcProcessId) |
static internal int | vtkMultiProcessController_Broadcast_14 (HandleRef pThis, HandleRef data, int srcProcessId) |
static internal int | vtkMultiProcessController_Broadcast_15 (HandleRef pThis, HandleRef data, int srcProcessId) |
static internal void | vtkMultiProcessController_CreateOutputWindow_16 (HandleRef pThis) |
static internal IntPtr | vtkMultiProcessController_CreateSubController_17 (HandleRef pThis, HandleRef group, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal void | vtkMultiProcessController_Finalize_18 (HandleRef pThis) |
static internal void | vtkMultiProcessController_Finalize_19 (HandleRef pThis, int finalizedExternally) |
static internal int | vtkMultiProcessController_Gather_20 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int length, int destProcessId) |
static internal int | vtkMultiProcessController_Gather_21 (HandleRef pThis, string sendBuffer, string recvBuffer, int length, int destProcessId) |
static internal int | vtkMultiProcessController_Gather_22 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, int destProcessId) |
static internal int | vtkMultiProcessController_GatherV_23 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
static internal int | vtkMultiProcessController_GatherV_24 (HandleRef pThis, string sendBuffer, string recvBuffer, int sendLength, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
static internal int | vtkMultiProcessController_GatherV_25 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, IntPtr recvLengths, IntPtr offsets, int destProcessId) |
static internal int | vtkMultiProcessController_GatherV_26 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, int destProcessId) |
static internal int | vtkMultiProcessController_GetBreakFlag_27 (HandleRef pThis) |
static internal int | vtkMultiProcessController_GetBreakRMITag_28 () |
static internal IntPtr | vtkMultiProcessController_GetCommunicator_29 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal int | vtkMultiProcessController_GetCount_30 (HandleRef pThis) |
static internal IntPtr | vtkMultiProcessController_GetGlobalController_31 (ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal int | vtkMultiProcessController_GetLocalProcessId_32 (HandleRef pThis) |
static internal int | vtkMultiProcessController_GetNumberOfProcesses_33 (HandleRef pThis) |
static internal int | vtkMultiProcessController_GetRMIArgTag_34 () |
static internal int | vtkMultiProcessController_GetRMITag_35 () |
static internal int | vtkMultiProcessController_IsA_36 (HandleRef pThis, string type) |
static internal int | vtkMultiProcessController_IsTypeOf_37 (string type) |
static internal void | vtkMultiProcessController_MultipleMethodExecute_38 (HandleRef pThis) |
static internal IntPtr | vtkMultiProcessController_NewInstance_39 (HandleRef pThis, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal IntPtr | vtkMultiProcessController_PartitionController_40 (HandleRef pThis, int localColor, int localKey, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal int | vtkMultiProcessController_ProcessRMIs_41 (HandleRef pThis, int reportErrors, int dont_loop) |
static internal int | vtkMultiProcessController_ProcessRMIs_42 (HandleRef pThis) |
static internal int | vtkMultiProcessController_Receive_43 (HandleRef pThis, IntPtr data, int length, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Receive_44 (HandleRef pThis, string data, int length, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Receive_45 (HandleRef pThis, HandleRef data, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Receive_46 (HandleRef pThis, HandleRef data, int remoteProcessId, int tag) |
static internal IntPtr | vtkMultiProcessController_ReceiveDataObject_47 (HandleRef pThis, int remoteProcessId, int tag, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal int | vtkMultiProcessController_Reduce_48 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int length, int operation, int destProcessId) |
static internal int | vtkMultiProcessController_Reduce_49 (HandleRef pThis, string sendBuffer, string recvBuffer, int length, int operation, int destProcessId) |
static internal int | vtkMultiProcessController_Reduce_50 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, int operation, int destProcessId) |
static internal void | vtkMultiProcessController_RemoveAllRMICallbacks_51 (HandleRef pThis, int tag) |
static internal int | vtkMultiProcessController_RemoveFirstRMI_52 (HandleRef pThis, int tag) |
static internal int | vtkMultiProcessController_RemoveRMI_53 (HandleRef pThis, uint id) |
static internal byte | vtkMultiProcessController_RemoveRMICallback_54 (HandleRef pThis, uint id) |
static internal IntPtr | vtkMultiProcessController_SafeDownCast_55 (HandleRef o, ref uint mteStatus, ref uint mteIndex, ref uint rawRefCount) |
static internal int | vtkMultiProcessController_Scatter_56 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, int length, int srcProcessId) |
static internal int | vtkMultiProcessController_Scatter_57 (HandleRef pThis, string sendBuffer, string recvBuffer, int length, int srcProcessId) |
static internal int | vtkMultiProcessController_Scatter_58 (HandleRef pThis, HandleRef sendBuffer, HandleRef recvBuffer, int srcProcessId) |
static internal int | vtkMultiProcessController_ScatterV_59 (HandleRef pThis, IntPtr sendBuffer, IntPtr recvBuffer, IntPtr sendLengths, IntPtr offsets, int recvLength, int srcProcessId) |
static internal int | vtkMultiProcessController_ScatterV_60 (HandleRef pThis, string sendBuffer, string recvBuffer, IntPtr sendLengths, IntPtr offsets, int recvLength, int srcProcessId) |
static internal int | vtkMultiProcessController_Send_61 (HandleRef pThis, IntPtr data, int length, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Send_62 (HandleRef pThis, string data, int length, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Send_63 (HandleRef pThis, HandleRef data, int remoteProcessId, int tag) |
static internal int | vtkMultiProcessController_Send_64 (HandleRef pThis, HandleRef data, int remoteProcessId, int tag) |
static internal void | vtkMultiProcessController_SetBreakFlag_65 (HandleRef pThis, int _arg) |
static internal void | vtkMultiProcessController_SetGlobalController_66 (HandleRef controller) |
static internal void | vtkMultiProcessController_SetNumberOfProcesses_67 (HandleRef pThis, int num) |
static internal void | vtkMultiProcessController_SetSingleProcessObject_68 (HandleRef pThis, HandleRef p) |
static internal void | vtkMultiProcessController_SingleMethodExecute_69 (HandleRef pThis) |
static internal void | vtkMultiProcessController_TriggerBreakRMIs_70 (HandleRef pThis) |
static internal void | vtkMultiProcessController_TriggerRMI_71 (HandleRef pThis, int remoteProcessId, IntPtr arg, int argLength, int tag) |
static internal void | vtkMultiProcessController_TriggerRMI_72 (HandleRef pThis, int remoteProcessId, string arg, int tag) |
static internal void | vtkMultiProcessController_TriggerRMI_73 (HandleRef pThis, int remoteProcessId, int tag) |
static internal void | vtkMultiProcessController_TriggerRMIOnAllChildren_74 (HandleRef pThis, IntPtr arg, int argLength, int tag) |
static internal void | vtkMultiProcessController_TriggerRMIOnAllChildren_75 (HandleRef pThis, string arg, int tag) |
static internal void | vtkMultiProcessController_TriggerRMIOnAllChildren_76 (HandleRef pThis, int tag) |
Static Private Member Functions | |
static | vtkMultiProcessController () |
Automatically generated type registration mechanics. |
vtkMultiProcessController - Multiprocessing communication superclass
Description vtkMultiProcessController is used to control multiple processes in a distributed computing environment. It has methods for executing single/multiple method(s) on multiple processors, triggering registered callbacks (Remote Methods) (AddRMI(), TriggerRMI()) and communication. Please note that the communication is done using the communicator which is accessible to the user. Therefore it is possible to get the communicator with GetCommunicator() and use it to send and receive data. This is the encouraged communication method. The internal (RMI) communications are done using a second internal communicator (called RMICommunicator).
vtkMPIController vtkCommunicator vtkMPICommunicator
Accessor to some default tags.
Reimplemented in Kitware.VTK.vtkSocketController.
static Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController | ( | ) | [static, private] |
Automatically generated type registration mechanics.
Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController | ( | IntPtr | rawCppThis, |
bool | callDisposalMethod, | ||
bool | strong | ||
) |
Automatically generated constructor - called from generated code. DO NOT call directly.
int Kitware.VTK.vtkMultiProcessController.AllGather | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | length | ||
) |
Same as gather except that the result ends up on all processes.
int Kitware.VTK.vtkMultiProcessController.AllGather | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | length | ||
) |
Same as gather except that the result ends up on all processes.
int Kitware.VTK.vtkMultiProcessController.AllGather | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer | ||
) |
Same as gather except that the result ends up on all processes.
int Kitware.VTK.vtkMultiProcessController.AllGatherV | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) |
Same as GatherV except that the result is placed in all processes.
int Kitware.VTK.vtkMultiProcessController.AllGatherV | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) |
Same as GatherV except that the result is placed in all processes.
int Kitware.VTK.vtkMultiProcessController.AllGatherV | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) |
Same as GatherV except that the result is placed in all processes.
int Kitware.VTK.vtkMultiProcessController.AllGatherV | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer | ||
) |
This special form of AllGatherV will automatically determine recvLengths
and offsets
to tightly pack the data in the recvBuffer
in process order. It will also resize recvBuffer
in order to accommodate the incoming data (unlike the other GatherV variants).
int Kitware.VTK.vtkMultiProcessController.AllReduce | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | length, | ||
int | operation | ||
) |
Same as Reduce except that the result is placed in all of the processes.
int Kitware.VTK.vtkMultiProcessController.AllReduce | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | length, | ||
int | operation | ||
) |
Same as Reduce except that the result is placed in all of the processes.
int Kitware.VTK.vtkMultiProcessController.AllReduce | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
int | operation | ||
) |
Same as Reduce except that the result is placed in all of the processes.
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Broadcast | ( | IntPtr | data, |
int | length, | ||
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes. All processes must call these method with the same arguments in order for it to complete.
int Kitware.VTK.vtkMultiProcessController.Broadcast | ( | string | data, |
int | length, | ||
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes. All processes must call these method with the same arguments in order for it to complete.
int Kitware.VTK.vtkMultiProcessController.Broadcast | ( | vtkDataObject | data, |
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes. All processes must call these method with the same arguments in order for it to complete.
int Kitware.VTK.vtkMultiProcessController.Broadcast | ( | vtkDataArray | data, |
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes. All processes must call these method with the same arguments in order for it to complete.
virtual void Kitware.VTK.vtkMultiProcessController.CreateOutputWindow | ( | ) | [virtual] |
This method can be used to tell the controller to create a special output window in which all messages are preceded by the process id.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
virtual vtkMultiProcessController Kitware.VTK.vtkMultiProcessController.CreateSubController | ( | vtkProcessGroup | group | ) | [virtual] |
Creates a new controller with the processes specified by the given group. The new controller will already be initialized for you. You are responsible for deleting the controller once you are done. It is invalid to pass this method a group with a different communicator than is used by this controller. This operation is collective accross all processes defined in the group. It is undefined what will happen if the group is not the same on all processes. This method must be called by all processes in the controller regardless of whether they are in the group. NULL is returned on all process not in the group.
override void Kitware.VTK.vtkMultiProcessController.Dispose | ( | bool | disposing | ) | [protected] |
Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkDummyController, and Kitware.VTK.vtkSocketController.
virtual void Kitware.VTK.vtkMultiProcessController.FinalizeWrapper | ( | ) | [virtual] |
This method is for cleaning up. If a subclass needs to clean up process communication (i.e. MPI) it would over ride this method.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
virtual void Kitware.VTK.vtkMultiProcessController.FinalizeWrapper | ( | int | finalizedExternally | ) | [virtual] |
This method is for cleaning up. If a subclass needs to clean up process communication (i.e. MPI) it would over ride this method. Provided for finalization outside vtk.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
int Kitware.VTK.vtkMultiProcessController.Gather | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | length, | ||
int | destProcessId | ||
) |
Gather collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
int Kitware.VTK.vtkMultiProcessController.Gather | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | length, | ||
int | destProcessId | ||
) |
Gather collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
int Kitware.VTK.vtkMultiProcessController.Gather | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
int | destProcessId | ||
) |
Gather collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
int Kitware.VTK.vtkMultiProcessController.GatherV | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
int Kitware.VTK.vtkMultiProcessController.GatherV | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
int Kitware.VTK.vtkMultiProcessController.GatherV | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) |
GatherV is the vector variant of Gather. It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
int Kitware.VTK.vtkMultiProcessController.GatherV | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
int | destProcessId | ||
) |
This special form of GatherV will automatically determine recvLengths
and offsets
to tightly pack the data in the recvBuffer
in process order. It will also resize recvBuffer
in order to accommodate the incoming data (unlike the other GatherV variants).
virtual int Kitware.VTK.vtkMultiProcessController.GetBreakFlag | ( | ) | [virtual] |
Setting this flag to 1 will cause the ProcessRMIs loop to return. This also causes vtkUpStreamPorts to return from their WaitForUpdate loops.
static int Kitware.VTK.vtkMultiProcessController.GetBreakRMITag | ( | ) | [static] |
Accessor to some default tags.
virtual vtkCommunicator Kitware.VTK.vtkMultiProcessController.GetCommunicator | ( | ) | [virtual] |
Returns the communicator associated with this controller. A default communicator is created in constructor.
Reimplemented in Kitware.VTK.vtkDummyController.
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
static vtkMultiProcessController Kitware.VTK.vtkMultiProcessController.GetGlobalController | ( | ) | [static] |
This convenience method returns the controller associated with the local process. It returns NULL until the processes are spawned. It is better if you hang on to the controller passed as an argument to the SingleMethod or MultipleMethod functions.
Tells you which process [0, NumProcess) you are in.
Reimplemented in Kitware.VTK.vtkDummyController.
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error.
static int Kitware.VTK.vtkMultiProcessController.GetRMIArgTag | ( | ) | [static] |
Accessor to some default tags.
static int Kitware.VTK.vtkMultiProcessController.GetRMITag | ( | ) | [static] |
Accessor to some default tags.
override int Kitware.VTK.vtkMultiProcessController.IsA | ( | string | type | ) | [virtual] |
Undocumented Block.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
static new int Kitware.VTK.vtkMultiProcessController.IsTypeOf | ( | string | type | ) | [static] |
Undocumented Block.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
virtual void Kitware.VTK.vtkMultiProcessController.MultipleMethodExecute | ( | ) | [virtual] |
Execute the MultipleMethods (as define by calling SetMultipleMethod for each of the required this->NumberOfProcesses methods) using this->NumberOfProcesses processes.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
Undocumented Block.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
virtual vtkMultiProcessController Kitware.VTK.vtkMultiProcessController.PartitionController | ( | int | localColor, |
int | localKey | ||
) | [virtual] |
Partitions this controller based on a coloring. That is, each process passes in a color. All processes with the same color are grouped into the same partition. The processes are ordered by their self-assigned key. Lower keys have lower process ids. Ties are broken by the current process ids. (For example, if all the keys are 0, then the resulting processes will be ordered in the same way.) This method returns a new controller to each process that represents the local partition. This is basically the same operation as MPI_Comm_split.
int Kitware.VTK.vtkMultiProcessController.ProcessRMIs | ( | int | reportErrors, |
int | dont_loop | ||
) |
Calling this method gives control to the controller to start processing RMIs. Possible return values are: RMI_NO_ERROR, RMI_TAG_ERROR : rmi tag could not be received, RMI_ARG_ERROR : rmi arg could not be received. If reportErrors is false, no vtkErrorMacro is called. ProcessRMIs() calls ProcessRMIs(int) with reportErrors = 0. If dont_loop is 1, this call just process one RMI message and exits.
Calling this method gives control to the controller to start processing RMIs. Possible return values are: RMI_NO_ERROR, RMI_TAG_ERROR : rmi tag could not be received, RMI_ARG_ERROR : rmi arg could not be received. If reportErrors is false, no vtkErrorMacro is called. ProcessRMIs() calls ProcessRMIs(int) with reportErrors = 0. If dont_loop is 1, this call just process one RMI message and exits.
int Kitware.VTK.vtkMultiProcessController.Receive | ( | IntPtr | data, |
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Receive | ( | string | data, |
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Receive | ( | vtkDataObject | data, |
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Receive | ( | vtkDataArray | data, |
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
vtkDataObject Kitware.VTK.vtkMultiProcessController.ReceiveDataObject | ( | int | remoteProcessId, |
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Reduce | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | length, | ||
int | operation, | ||
int | destProcessId | ||
) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
int Kitware.VTK.vtkMultiProcessController.Reduce | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | length, | ||
int | operation, | ||
int | destProcessId | ||
) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
int Kitware.VTK.vtkMultiProcessController.Reduce | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
int | operation, | ||
int | destProcessId | ||
) |
Reduce an array to the given destination process. This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
void Kitware.VTK.vtkMultiProcessController.RemoveAllRMICallbacks | ( | int | tag | ) |
------------------ RMIs --------------------
int Kitware.VTK.vtkMultiProcessController.RemoveFirstRMI | ( | int | tag | ) |
------------------ RMIs --------------------
int Kitware.VTK.vtkMultiProcessController.RemoveRMI | ( | uint | id | ) |
------------------ RMIs --------------------
bool Kitware.VTK.vtkMultiProcessController.RemoveRMICallback | ( | uint | id | ) |
------------------ RMIs --------------------
static new vtkMultiProcessController Kitware.VTK.vtkMultiProcessController.SafeDownCast | ( | vtkObjectBase | o | ) | [static] |
Undocumented Block.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
int Kitware.VTK.vtkMultiProcessController.Scatter | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
int | length, | ||
int | srcProcessId | ||
) |
Scatter takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
int Kitware.VTK.vtkMultiProcessController.Scatter | ( | string | sendBuffer, |
string | recvBuffer, | ||
int | length, | ||
int | srcProcessId | ||
) |
Scatter takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
int Kitware.VTK.vtkMultiProcessController.Scatter | ( | vtkDataArray | sendBuffer, |
vtkDataArray | recvBuffer, | ||
int | srcProcessId | ||
) |
Scatter takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
int Kitware.VTK.vtkMultiProcessController.ScatterV | ( | IntPtr | sendBuffer, |
IntPtr | recvBuffer, | ||
IntPtr | sendLengths, | ||
IntPtr | offsets, | ||
int | recvLength, | ||
int | srcProcessId | ||
) |
ScatterV is the vector variant of Scatter. It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
int Kitware.VTK.vtkMultiProcessController.ScatterV | ( | string | sendBuffer, |
string | recvBuffer, | ||
IntPtr | sendLengths, | ||
IntPtr | offsets, | ||
int | recvLength, | ||
int | srcProcessId | ||
) |
ScatterV is the vector variant of Scatter. It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
int Kitware.VTK.vtkMultiProcessController.Send | ( | IntPtr | data, |
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Send | ( | string | data, |
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Send | ( | vtkDataObject | data, |
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
int Kitware.VTK.vtkMultiProcessController.Send | ( | vtkDataArray | data, |
int | remoteProcessId, | ||
int | tag | ||
) |
Communicator which is a copy of the current user level communicator except the context; i.e. even if the tags are the same, the RMI messages will not interfere with user level messages. Note that since the communicators can be created differently depending on the type of controller, the subclasses are responsible of deleting them.
virtual void Kitware.VTK.vtkMultiProcessController.SetBreakFlag | ( | int | _arg | ) | [virtual] |
Setting this flag to 1 will cause the ProcessRMIs loop to return. This also causes vtkUpStreamPorts to return from their WaitForUpdate loops.
static void Kitware.VTK.vtkMultiProcessController.SetGlobalController | ( | vtkMultiProcessController | controller | ) | [static] |
This method can be used to synchronize processes.
void Kitware.VTK.vtkMultiProcessController.SetNumberOfProcesses | ( | int | num | ) |
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error.
Set the number of processes you will be using. This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error.
virtual void Kitware.VTK.vtkMultiProcessController.SingleMethodExecute | ( | ) | [virtual] |
Execute the SingleMethod (as define by SetSingleMethod) using this->NumberOfProcesses processes. This will only return when all the processes finish executing their methods.
Reimplemented in Kitware.VTK.vtkSocketController, and Kitware.VTK.vtkDummyController.
A conveniance method. Called on process 0 to break "ProcessRMIs" loop on all other processes.
void Kitware.VTK.vtkMultiProcessController.TriggerRMI | ( | int | remoteProcessId, |
IntPtr | arg, | ||
int | argLength, | ||
int | tag | ||
) |
A method to trigger a method invocation in another process.
void Kitware.VTK.vtkMultiProcessController.TriggerRMI | ( | int | remoteProcessId, |
string | arg, | ||
int | tag | ||
) |
Convenience method when the arg is a string.
void Kitware.VTK.vtkMultiProcessController.TriggerRMI | ( | int | remoteProcessId, |
int | tag | ||
) |
Convenience method when there is no argument.
void Kitware.VTK.vtkMultiProcessController.TriggerRMIOnAllChildren | ( | IntPtr | arg, |
int | argLength, | ||
int | tag | ||
) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node.
void Kitware.VTK.vtkMultiProcessController.TriggerRMIOnAllChildren | ( | string | arg, |
int | tag | ||
) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node.
void Kitware.VTK.vtkMultiProcessController.TriggerRMIOnAllChildren | ( | int | tag | ) |
This is a convenicence method to trigger an RMI call on all the "children" of the current node. The children of the current node can be determined by drawing a binary tree starting at node 0 and then assigned nodes ids incrementally in a breadth-first fashion from left to right. This is designed to be used when trigger an RMI call on all satellites from the root node.
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGather_01 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | length | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGather_02 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | length | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGather_03 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGatherV_04 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGatherV_05 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGatherV_06 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllGatherV_07 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllReduce_08 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | length, | ||
int | operation | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllReduce_09 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | length, | ||
int | operation | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_AllReduce_10 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
int | operation | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Barrier_11 | ( | HandleRef | pThis | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Broadcast_12 | ( | HandleRef | pThis, |
IntPtr | data, | ||
int | length, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Broadcast_13 | ( | HandleRef | pThis, |
string | data, | ||
int | length, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Broadcast_14 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Broadcast_15 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | srcProcessId | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_CreateOutputWindow_16 | ( | HandleRef | pThis | ) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_CreateSubController_17 | ( | HandleRef | pThis, |
HandleRef | group, | ||
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Finalize_18 | ( | HandleRef | pThis | ) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Finalize_19 | ( | HandleRef | pThis, |
int | finalizedExternally | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Gather_20 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | length, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Gather_21 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | length, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Gather_22 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GatherV_23 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GatherV_24 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | sendLength, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GatherV_25 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
IntPtr | recvLengths, | ||
IntPtr | offsets, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GatherV_26 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetBreakFlag_27 | ( | HandleRef | pThis | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetBreakRMITag_28 | ( | ) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetCommunicator_29 | ( | HandleRef | pThis, |
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetCount_30 | ( | HandleRef | pThis | ) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetGlobalController_31 | ( | ref uint | mteStatus, |
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetLocalProcessId_32 | ( | HandleRef | pThis | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetNumberOfProcesses_33 | ( | HandleRef | pThis | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetRMIArgTag_34 | ( | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_GetRMITag_35 | ( | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_IsA_36 | ( | HandleRef | pThis, |
string | type | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_IsTypeOf_37 | ( | string | type | ) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_MultipleMethodExecute_38 | ( | HandleRef | pThis | ) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_NewInstance_39 | ( | HandleRef | pThis, |
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_PartitionController_40 | ( | HandleRef | pThis, |
int | localColor, | ||
int | localKey, | ||
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_ProcessRMIs_41 | ( | HandleRef | pThis, |
int | reportErrors, | ||
int | dont_loop | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_ProcessRMIs_42 | ( | HandleRef | pThis | ) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Receive_43 | ( | HandleRef | pThis, |
IntPtr | data, | ||
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Receive_44 | ( | HandleRef | pThis, |
string | data, | ||
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Receive_45 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Receive_46 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_ReceiveDataObject_47 | ( | HandleRef | pThis, |
int | remoteProcessId, | ||
int | tag, | ||
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Reduce_48 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | length, | ||
int | operation, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Reduce_49 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | length, | ||
int | operation, | ||
int | destProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Reduce_50 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
int | operation, | ||
int | destProcessId | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_RemoveAllRMICallbacks_51 | ( | HandleRef | pThis, |
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_RemoveFirstRMI_52 | ( | HandleRef | pThis, |
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_RemoveRMI_53 | ( | HandleRef | pThis, |
uint | id | ||
) | [private] |
static internal byte Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_RemoveRMICallback_54 | ( | HandleRef | pThis, |
uint | id | ||
) | [private] |
static internal IntPtr Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SafeDownCast_55 | ( | HandleRef | o, |
ref uint | mteStatus, | ||
ref uint | mteIndex, | ||
ref uint | rawRefCount | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Scatter_56 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
int | length, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Scatter_57 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
int | length, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Scatter_58 | ( | HandleRef | pThis, |
HandleRef | sendBuffer, | ||
HandleRef | recvBuffer, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_ScatterV_59 | ( | HandleRef | pThis, |
IntPtr | sendBuffer, | ||
IntPtr | recvBuffer, | ||
IntPtr | sendLengths, | ||
IntPtr | offsets, | ||
int | recvLength, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_ScatterV_60 | ( | HandleRef | pThis, |
string | sendBuffer, | ||
string | recvBuffer, | ||
IntPtr | sendLengths, | ||
IntPtr | offsets, | ||
int | recvLength, | ||
int | srcProcessId | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Send_61 | ( | HandleRef | pThis, |
IntPtr | data, | ||
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Send_62 | ( | HandleRef | pThis, |
string | data, | ||
int | length, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Send_63 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal int Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_Send_64 | ( | HandleRef | pThis, |
HandleRef | data, | ||
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SetBreakFlag_65 | ( | HandleRef | pThis, |
int | _arg | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SetGlobalController_66 | ( | HandleRef | controller | ) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SetNumberOfProcesses_67 | ( | HandleRef | pThis, |
int | num | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SetSingleProcessObject_68 | ( | HandleRef | pThis, |
HandleRef | p | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_SingleMethodExecute_69 | ( | HandleRef | pThis | ) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerBreakRMIs_70 | ( | HandleRef | pThis | ) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMI_71 | ( | HandleRef | pThis, |
int | remoteProcessId, | ||
IntPtr | arg, | ||
int | argLength, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMI_72 | ( | HandleRef | pThis, |
int | remoteProcessId, | ||
string | arg, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMI_73 | ( | HandleRef | pThis, |
int | remoteProcessId, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMIOnAllChildren_74 | ( | HandleRef | pThis, |
IntPtr | arg, | ||
int | argLength, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMIOnAllChildren_75 | ( | HandleRef | pThis, |
string | arg, | ||
int | tag | ||
) | [private] |
static internal void Kitware.VTK.vtkMultiProcessController.vtkMultiProcessController_TriggerRMIOnAllChildren_76 | ( | HandleRef | pThis, |
int | tag | ||
) | [private] |
new readonly string Kitware.VTK.vtkMultiProcessController.MRClassNameKey = "25vtkMultiProcessController" [static] |
Automatically generated type registration mechanics.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkDummyController, and Kitware.VTK.vtkSocketController.
new const string Kitware.VTK.vtkMultiProcessController.MRFullTypeName = "Kitware.VTK.vtkMultiProcessController" |
Automatically generated type registration mechanics.
Reimplemented from Kitware.VTK.vtkObject.
Reimplemented in Kitware.VTK.vtkDummyController, and Kitware.VTK.vtkSocketController.