ParaView
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
vtkCompositeMultiProcessController Class Reference

vtkCompositeMultiProcessController offer a composite implementation of vtkMultiProcessController that allow us to deal with collaborative MultiProcessController by switching transparently underneath the active one and forwarding the method call to that specific one. More...

#include <vtkCompositeMultiProcessController.h>

Inherits vtkMultiProcessController.

Public Types

enum  EventId { CompositeMultiProcessControllerChanged = 2345 }
 
typedef vtkMultiProcessController Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
int GetActiveControllerID ()
 Return a unique identifier for the given selected controller. More...
 
int GetNumberOfControllers ()
 Return the number of currently connected controllers. More...
 
int GetControllerId (int idx)
 Return the id of the nth controller. More...
 
void SetMasterController (int id)
 Promote the given controller (ID) to be the next master controller. More...
 
int GetMasterController ()
 Retrun the ID of the designed "Master" controller. More...
 
void RegisterController (vtkMultiProcessController *controller)
 Append the given controller to the composite set. More...
 
void UnRegisterController (vtkMultiProcessController *controller)
 Remove the given controller to the composite set. More...
 
int UnRegisterActiveController ()
 Remove the active controller and return the number of registered controler left. More...
 
vtkMultiProcessController * GetActiveController ()
 Provides access to the active controller. More...
 
virtual void TriggerRMI2All (int remote, void *data, int length, int tag, bool sendToActiveToo)
 Allow server to broadcast data to all connected client with our without sending to the active client. More...
 
virtual void Initialize ()
 
virtual void Initialize (int *, char ***)
 
virtual void Initialize (int *, char ***, int)
 
virtual void Finalize ()
 
virtual void Finalize (int)
 
virtual void SingleMethodExecute ()
 
virtual void MultipleMethodExecute ()
 
virtual void CreateOutputWindow ()
 
virtual vtkCommunicator * GetCommunicator ()
 
virtual unsigned long AddRMICallback (vtkRMIFunctionType, void *localArg, int tag)
 These methods are a part of the newer API to add multiple rmi callbacks. More...
 
virtual void RemoveAllRMICallbacks (int tag)
 These methods are a part of the newer API to add multiple rmi callbacks. More...
 
virtual int RemoveFirstRMI (int tag)
 These methods are a part of the newer API to add multiple rmi callbacks. More...
 
virtual bool RemoveRMICallback (unsigned long observerTagId)
 These methods are a part of the newer API to add multiple rmi callbacks. More...
 

Static Public Member Functions

static vtkCompositeMultiProcessControllerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkCompositeMultiProcessControllerSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkCompositeMultiProcessController ()
 
 ~vtkCompositeMultiProcessController ()
 

Friends

class vtkCompositeInternals
 

Detailed Description

vtkCompositeMultiProcessController offer a composite implementation of vtkMultiProcessController that allow us to deal with collaborative MultiProcessController by switching transparently underneath the active one and forwarding the method call to that specific one.

RMICallBack are simply set on all of the MultiProcessController inside the composite.

Definition at line 32 of file vtkCompositeMultiProcessController.h.

Member Typedef Documentation

◆ Superclass

typedef vtkMultiProcessController vtkCompositeMultiProcessController::Superclass

Definition at line 37 of file vtkCompositeMultiProcessController.h.

Member Enumeration Documentation

◆ EventId

Enumerator
CompositeMultiProcessControllerChanged 

Definition at line 141 of file vtkCompositeMultiProcessController.h.

Constructor & Destructor Documentation

◆ vtkCompositeMultiProcessController()

vtkCompositeMultiProcessController::vtkCompositeMultiProcessController ( )
protected

◆ ~vtkCompositeMultiProcessController()

vtkCompositeMultiProcessController::~vtkCompositeMultiProcessController ( )
protected

Member Function Documentation

◆ New()

static vtkCompositeMultiProcessController* vtkCompositeMultiProcessController::New ( )
static

◆ GetClassName()

virtual const char* vtkCompositeMultiProcessController::GetClassName ( )
virtual

◆ IsTypeOf()

static int vtkCompositeMultiProcessController::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual int vtkCompositeMultiProcessController::IsA ( const char *  type)
virtual

◆ SafeDownCast()

static vtkCompositeMultiProcessController* vtkCompositeMultiProcessController::SafeDownCast ( vtkObject *  o)
static

◆ PrintSelf()

void vtkCompositeMultiProcessController::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

◆ GetActiveControllerID()

int vtkCompositeMultiProcessController::GetActiveControllerID ( )

Return a unique identifier for the given selected controller.

This is only used as information to id which client is currently talking to the server. In fact it is used inside vtkPVServerInformation so the client could know what is its unique ID in respect to the server.

◆ GetNumberOfControllers()

int vtkCompositeMultiProcessController::GetNumberOfControllers ( )

Return the number of currently connected controllers.

◆ GetControllerId()

int vtkCompositeMultiProcessController::GetControllerId ( int  idx)

Return the id of the nth controller.

◆ SetMasterController()

void vtkCompositeMultiProcessController::SetMasterController ( int  id)

Promote the given controller (ID) to be the next master controller.

Making a controller to be the master one, doesn't change anything on the controller itself. It is just a meta-data information that helps client application to build master/slave collaborative mechanism on top

◆ GetMasterController()

int vtkCompositeMultiProcessController::GetMasterController ( )

Retrun the ID of the designed "Master" controller.

That master controller is nothing else than a tag that can only be set on a single controller at a time.

◆ RegisterController()

void vtkCompositeMultiProcessController::RegisterController ( vtkMultiProcessController *  controller)

Append the given controller to the composite set.

We focus on vtkSocketController because most of the API method are empty

◆ UnRegisterController()

void vtkCompositeMultiProcessController::UnRegisterController ( vtkMultiProcessController *  controller)

Remove the given controller to the composite set.

◆ UnRegisterActiveController()

int vtkCompositeMultiProcessController::UnRegisterActiveController ( )

Remove the active controller and return the number of registered controler left.

◆ GetActiveController()

vtkMultiProcessController* vtkCompositeMultiProcessController::GetActiveController ( )

Provides access to the active controller.

◆ TriggerRMI2All()

virtual void vtkCompositeMultiProcessController::TriggerRMI2All ( int  remote,
void *  data,
int  length,
int  tag,
bool  sendToActiveToo 
)
virtual

Allow server to broadcast data to all connected client with our without sending to the active client.

◆ Initialize() [1/3]

virtual void vtkCompositeMultiProcessController::Initialize ( )
virtual

◆ Initialize() [2/3]

virtual void vtkCompositeMultiProcessController::Initialize ( int *  ,
char ***   
)
inlinevirtual

Definition at line 106 of file vtkCompositeMultiProcessController.h.

◆ Initialize() [3/3]

virtual void vtkCompositeMultiProcessController::Initialize ( int *  ,
char ***  ,
int   
)
inlinevirtual

Definition at line 107 of file vtkCompositeMultiProcessController.h.

◆ Finalize() [1/2]

virtual void vtkCompositeMultiProcessController::Finalize ( )
inlinevirtual

Definition at line 108 of file vtkCompositeMultiProcessController.h.

◆ Finalize() [2/2]

virtual void vtkCompositeMultiProcessController::Finalize ( int  )
inlinevirtual

Definition at line 109 of file vtkCompositeMultiProcessController.h.

◆ SingleMethodExecute()

virtual void vtkCompositeMultiProcessController::SingleMethodExecute ( )
inlinevirtual

Definition at line 110 of file vtkCompositeMultiProcessController.h.

◆ MultipleMethodExecute()

virtual void vtkCompositeMultiProcessController::MultipleMethodExecute ( )
inlinevirtual

Definition at line 111 of file vtkCompositeMultiProcessController.h.

◆ CreateOutputWindow()

virtual void vtkCompositeMultiProcessController::CreateOutputWindow ( )
inlinevirtual

Definition at line 112 of file vtkCompositeMultiProcessController.h.

◆ GetCommunicator()

virtual vtkCommunicator* vtkCompositeMultiProcessController::GetCommunicator ( )
virtual

◆ AddRMICallback()

virtual unsigned long vtkCompositeMultiProcessController::AddRMICallback ( vtkRMIFunctionType  ,
void *  localArg,
int  tag 
)
virtual

These methods are a part of the newer API to add multiple rmi callbacks.

When the RMI is triggered, all the callbacks are called Adds a new callback for an RMI. Returns the identifier for the callback.

◆ RemoveAllRMICallbacks()

virtual void vtkCompositeMultiProcessController::RemoveAllRMICallbacks ( int  tag)
virtual

These methods are a part of the newer API to add multiple rmi callbacks.

When the RMI is triggered, all the callbacks are called Removes all callbacks for the tag.

◆ RemoveFirstRMI()

virtual int vtkCompositeMultiProcessController::RemoveFirstRMI ( int  tag)
inlinevirtual

These methods are a part of the newer API to add multiple rmi callbacks.

When the RMI is triggered, all the callbacks are called Removes all callbacks for the tag.

Definition at line 132 of file vtkCompositeMultiProcessController.h.

◆ RemoveRMICallback()

virtual bool vtkCompositeMultiProcessController::RemoveRMICallback ( unsigned long  observerTagId)
virtual

These methods are a part of the newer API to add multiple rmi callbacks.

When the RMI is triggered, all the callbacks are called Removes all callbacks for the tag.

Friends And Related Function Documentation

◆ vtkCompositeInternals

friend class vtkCompositeInternals
friend

Definition at line 156 of file vtkCompositeMultiProcessController.h.


The documentation for this class was generated from the following file: