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

vtkSMSessionServer is a session used on data and/or render servers. More...

#include <vtkPVSessionServer.h>

Inheritance diagram for vtkPVSessionServer:
Inheritance graph
[legend]
Collaboration diagram for vtkPVSessionServer:
Collaboration graph
[legend]

Public Types

enum  {
  PUSH = 12, PULL = 13, EXECUTE_STREAM = 14, GATHER_INFORMATION = 15,
  REGISTER_SI = 16, UNREGISTER_SI = 17, LAST_RESULT = 18, SERVER_NOTIFICATION_MESSAGE_RMI = 55624,
  CLIENT_SERVER_MESSAGE_RMI = 55625, CLOSE_SESSION = 55626, REPLY_GATHER_INFORMATION_TAG = 55627, REPLY_PULL = 55628,
  REPLY_LAST_RESULT = 55629, EXECUTE_STREAM_TAG = 55630
}
 Client-Server Communication tags. More...
 
typedef vtkPVSessionBase Superclass
 
- Public Types inherited from vtkPVSessionBase
enum  EventIds { RegisterRemoteObjectEvent = 1234, UnRegisterRemoteObjectEvent = 4321, ProcessingRemoteEnd = 2143, ConnectionLost = 6789 }
 
typedef vtkPVSession Superclass
 
- Public Types inherited from vtkPVSession
enum  ServerFlags {
  NONE = 0, DATA_SERVER = 0x01, DATA_SERVER_ROOT = 0x02, RENDER_SERVER = 0x04,
  RENDER_SERVER_ROOT = 0x08, SERVERS = DATA_SERVER | RENDER_SERVER, CLIENT = 0x10, CLIENT_AND_SERVERS = DATA_SERVER | CLIENT | RENDER_SERVER
}
 
typedef vtkSession Superclass
 
- Public Types inherited from vtkSession
typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkMultiProcessController * GetController (ServerFlags processType)
 Returns the active controller used to communicate with the process. More...
 
virtual bool Connect (const char *url)
 Connects a remote server. More...
 
bool Connect ()
 Overload that constructs the url using the command line parameters specified and then calls Connect(url). More...
 
virtual bool GetIsAlive ()
 Returns true is this session is active/alive/valid. More...
 
void OnClientServerMessageRMI (void *message, int message_length)
 
void OnCloseSessionRMI ()
 
virtual void NotifyAllClients (const vtkSMMessage *)
 Sends the message to all clients. More...
 
virtual void NotifyOtherClients (const vtkSMMessage *)
 Sends the message to all but the active client-session. More...
 
virtual void MultipleConnectionOn ()
 Enable or Disable multi-connection support. More...
 
virtual void MultipleConnectionOff ()
 Enable or Disable multi-connection support. More...
 
virtual void SetMultipleConnection (bool)
 Enable or Disable multi-connection support. More...
 
virtual bool GetMultipleConnection ()
 Enable or Disable multi-connection support. More...
 
- Public Member Functions inherited from vtkPVSessionBase
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual ServerFlags GetProcessRoles ()
 Returns a ServerFlags indicate the nature of the current processes. More...
 
virtual vtkPVServerInformationGetServerInformation ()
 vtkPVServerInformation is an information-object that provides information about the server processes. More...
 
virtual vtkMPIMToNSocketConnectionGetMPIMToNSocketConnection ()
 This is socket connection, if any to communicate between the data-server and render-server nodes. More...
 
virtual void PushState (vtkSMMessage *msg)
 Push the state message. More...
 
virtual void PullState (vtkSMMessage *msg)
 Pull the state message. More...
 
virtual void ExecuteStream (vtkTypeUInt32 location, const vtkClientServerStream &stream, bool ignore_errors=false)
 Execute a command on the given processes. More...
 
virtual const vtkClientServerStreamGetLastResult (vtkTypeUInt32 location)
 Returns the response of the ExecuteStream() call from the location. More...
 
virtual bool GatherInformation (vtkTypeUInt32 location, vtkPVInformation *information, vtkTypeUInt32 globalid)
 Gather information about an object referred by the globalid. More...
 
vtkSIProxyDefinitionManagerGetProxyDefinitionManager ()
 Get the ProxyDefinitionManager. More...
 
vtkSIObjectGetSIObject (vtkTypeUInt32 globalid)
 Returns a vtkSIObject or subclass given its global id, if any. More...
 
virtual void UnRegisterSIObject (vtkSMMessage *msg)
 Unregister server side object. More...
 
virtual void RegisterSIObject (vtkSMMessage *msg)
 Register server side object. More...
 
vtkObject * GetRemoteObject (vtkTypeUInt32 globalid)
 Return a vtkSMRemoteObject given its global id if any otherwise return NULL;. More...
 
virtual void GetAllRemoteObjects (vtkCollection *collection)
 Allow the user to fill its vtkCollection with all RemoteObject This could be usefull when you want to hold a reference to them to prevent any deletion across several method call. More...
 
virtual vtkTypeUInt32 GetNextGlobalUniqueIdentifier ()
 Provides the next available identifier. More...
 
virtual vtkTypeUInt32 GetNextChunkGlobalUniqueIdentifier (vtkTypeUInt32 chunkSize)
 Return the first Id of the requested chunk. More...
 
virtual bool IsProcessingRemoteNotification ()
 This propertie is used to discard ignore_synchronization proxy property when we load protobuf states. More...
 
virtual void UseSessionCoreOf (vtkPVSessionBase *other)
 Update internal session core in order to use the one used in another session. More...
 
virtual vtkPVSessionCoreGetSessionCore ()
 Provides access to the session core. More...
 
- Public Member Functions inherited from vtkPVSession
void PrintSelf (ostream &os, vtkIndent indent)
 
bool HasProcessRole (vtkTypeUInt32 flag)
 Convenience method that returns true if the current session is serving the indicated role on this process. More...
 
virtual bool IsMultiClients ()
 Allow anyone to know easily if the current session is involved in collaboration or not. More...
 
bool GetPendingProgress ()
 Returns true if the session is within a PrepareProgress() and CleanupPendingProgress() block. More...
 
virtual vtkPVProgressHandlerGetProgressHandler ()
 Provides access to the progress handler. More...
 
void PrepareProgress ()
 Should be called to begin/end receiving progresses on this session. More...
 
void CleanupPendingProgress ()
 Should be called to begin/end receiving progresses on this session. More...
 
- Public Member Functions inherited from vtkSession
void PrintSelf (ostream &os, vtkIndent indent)
 

Static Public Member Functions

static vtkPVSessionServerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPVSessionServerSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkPVSessionBase
static int IsTypeOf (const char *type)
 
static vtkPVSessionBaseSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkPVSession
static int IsTypeOf (const char *type)
 
static vtkPVSessionSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkSession
static int IsTypeOf (const char *type)
 
static vtkSessionSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkPVSessionServer ()
 
 ~vtkPVSessionServer ()
 
void GatherInformationInternal (vtkTypeUInt32 location, const char *classname, vtkTypeUInt32 globalid, vtkMultiProcessStream &)
 Called when client triggers GatherInformation(). More...
 
void SendLastResultToClient ()
 Sends the last result to client. More...
 
- Protected Member Functions inherited from vtkPVSessionBase
 vtkPVSessionBase ()
 
 vtkPVSessionBase (vtkPVSessionCore *coreToUse)
 
 ~vtkPVSessionBase ()
 
void RegisterRemoteObject (vtkTypeUInt32 globalid, vtkTypeUInt32 location, vtkObject *obj)
 Register a remote object. More...
 
void UnRegisterRemoteObject (vtkTypeUInt32 globalid, vtkTypeUInt32 location)
 Unregister a remote object. More...
 
vtkPVSessionCoreGetSessionCore () const
 Method used to migrate from one Session type to another by keeping the same vtkPVSessionCore. More...
 
void SetSessionCore (vtkPVSessionCore *)
 Method used to migrate from one Session type to another by keeping the same vtkPVSessionCore. More...
 
virtual void PrepareProgressInternal ()
 Should be called to begin/end receiving progresses on this session. More...
 
virtual void CleanupPendingProgressInternal ()
 Should be called to begin/end receiving progresses on this session. More...
 
virtual bool StartProcessingRemoteNotification ()
 Methods used to monitor if we are currently processing a server notification Only vtkSMSessionClient use the flag to disable ignore_synchronization properties from beeing updated. More...
 
virtual void StopProcessingRemoteNotification (bool previousValue)
 Methods used to monitor if we are currently processing a server notification Only vtkSMSessionClient use the flag to disable ignore_synchronization properties from beeing updated. More...
 
- Protected Member Functions inherited from vtkPVSession
 vtkPVSession ()
 
 ~vtkPVSession ()
 
virtual bool OnWrongTagEvent (vtkObject *caller, unsigned long eventid, void *calldata)
 Callback when any vtkMultiProcessController subclass fires a WrongTagEvent. More...
 
- Protected Member Functions inherited from vtkSession
 vtkSession ()
 
 ~vtkSession ()
 
virtual void Activate ()
 Subclasses must call this to mark the session active. More...
 
virtual void DeActivate ()
 Subclasses must call this to mark the session inactive. More...
 

Protected Attributes

vtkMPIMToNSocketConnectionMPIMToNSocketConnection
 
bool MultipleConnection
 
vtkInternalsInternal
 
- Protected Attributes inherited from vtkPVSessionBase
vtkPVSessionCoreSessionCore
 
bool ProcessingRemoteNotification
 Methods used to monitor if we are currently processing a server notification Only vtkSMSessionClient use the flag to disable ignore_synchronization properties from beeing updated. More...
 
- Protected Attributes inherited from vtkPVSession
vtkPVProgressHandlerProgressHandler
 

Friends

class vtkInternals
 

Additional Inherited Members

- Protected Types inherited from vtkPVSession
enum  { EXCEPTION_EVENT_TAG = 31416 }
 

Detailed Description

vtkSMSessionServer is a session used on data and/or render servers.

It's designed for a process that works with a separate client process that acts as the visualization driver.

See also
vtkSMSessionClient

Definition at line 34 of file vtkPVSessionServer.h.

Member Typedef Documentation

§ Superclass

Definition at line 38 of file vtkPVSessionServer.h.

Member Enumeration Documentation

§ anonymous enum

anonymous enum

Client-Server Communication tags.

Enumerator
PUSH 
PULL 
EXECUTE_STREAM 
GATHER_INFORMATION 
REGISTER_SI 
UNREGISTER_SI 
LAST_RESULT 
SERVER_NOTIFICATION_MESSAGE_RMI 
CLIENT_SERVER_MESSAGE_RMI 
CLOSE_SESSION 
REPLY_GATHER_INFORMATION_TAG 
REPLY_PULL 
REPLY_LAST_RESULT 
EXECUTE_STREAM_TAG 

Definition at line 77 of file vtkPVSessionServer.h.

Constructor & Destructor Documentation

§ vtkPVSessionServer()

vtkPVSessionServer::vtkPVSessionServer ( )
protected

§ ~vtkPVSessionServer()

vtkPVSessionServer::~vtkPVSessionServer ( )
protected

Member Function Documentation

§ New()

static vtkPVSessionServer* vtkPVSessionServer::New ( )
static

§ GetClassName()

virtual const char* vtkPVSessionServer::GetClassName ( )
virtual

Reimplemented from vtkPVSessionBase.

§ IsTypeOf()

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

§ IsA()

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

Reimplemented from vtkPVSessionBase.

§ SafeDownCast()

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

§ PrintSelf()

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

§ GetController()

virtual vtkMultiProcessController* vtkPVSessionServer::GetController ( ServerFlags  processType)
virtual

Returns the active controller used to communicate with the process.

Value must be DATA_SERVER_ROOT or RENDER_SERVER_ROOT or CLIENT. But only the CLIENT do return something different than NULL;

Reimplemented from vtkPVSession.

§ Connect() [1/2]

virtual bool vtkPVSessionServer::Connect ( const char *  url)
virtual

Connects a remote server.

URL can be of the following format: cs://<pvserver-host>:<pvserver-port> cdsrs://<pvdataserver-host>:<pvdataserver-port>/<pvrenderserver-host>:<pvrenderserver-port> In both cases the port is optional. When not provided default pvserver/pvdataserver port // is 11111, while default pvrenderserver port is 22221. For reverse connect i.e. the client waits for the server to connect back, simply add "rc" to the protocol e.g. csrc://<pvserver-host>:<pvserver-port> cdsrsrc://<pvdataserver-host>:<pvdataserver-port>/<pvrenderserver-host>:<pvrenderserver-port> In this case, the hostname is irrelevant and is ignored.

§ Connect() [2/2]

bool vtkPVSessionServer::Connect ( )

Overload that constructs the url using the command line parameters specified and then calls Connect(url).

§ GetIsAlive()

virtual bool vtkPVSessionServer::GetIsAlive ( )
virtual

Returns true is this session is active/alive/valid.

Implements vtkSession.

§ MultipleConnectionOn()

virtual void vtkPVSessionServer::MultipleConnectionOn ( )
virtual

Enable or Disable multi-connection support.

The MultipleConnection is only used inside the DATA_SERVER to support several clients to connect to it. By default we allow collaboration (this->MultipleConnection = true)

§ MultipleConnectionOff()

virtual void vtkPVSessionServer::MultipleConnectionOff ( )
virtual

Enable or Disable multi-connection support.

The MultipleConnection is only used inside the DATA_SERVER to support several clients to connect to it. By default we allow collaboration (this->MultipleConnection = true)

§ SetMultipleConnection()

virtual void vtkPVSessionServer::SetMultipleConnection ( bool  )
virtual

Enable or Disable multi-connection support.

The MultipleConnection is only used inside the DATA_SERVER to support several clients to connect to it. By default we allow collaboration (this->MultipleConnection = true)

§ GetMultipleConnection()

virtual bool vtkPVSessionServer::GetMultipleConnection ( )
virtual

Enable or Disable multi-connection support.

The MultipleConnection is only used inside the DATA_SERVER to support several clients to connect to it. By default we allow collaboration (this->MultipleConnection = true)

§ OnClientServerMessageRMI()

void vtkPVSessionServer::OnClientServerMessageRMI ( void *  message,
int  message_length 
)

§ OnCloseSessionRMI()

void vtkPVSessionServer::OnCloseSessionRMI ( )

§ NotifyAllClients()

virtual void vtkPVSessionServer::NotifyAllClients ( const vtkSMMessage )
virtual

Sends the message to all clients.

Implements vtkPVSessionBase.

§ NotifyOtherClients()

virtual void vtkPVSessionServer::NotifyOtherClients ( const vtkSMMessage )
virtual

Sends the message to all but the active client-session.

Implements vtkPVSessionBase.

§ GatherInformationInternal()

void vtkPVSessionServer::GatherInformationInternal ( vtkTypeUInt32  location,
const char *  classname,
vtkTypeUInt32  globalid,
vtkMultiProcessStream &   
)
protected

Called when client triggers GatherInformation().

§ SendLastResultToClient()

void vtkPVSessionServer::SendLastResultToClient ( )
protected

Sends the last result to client.

Friends And Related Function Documentation

§ vtkInternals

friend class vtkInternals
friend

Definition at line 141 of file vtkPVSessionServer.h.

Member Data Documentation

§ MPIMToNSocketConnection

vtkMPIMToNSocketConnection* vtkPVSessionServer::MPIMToNSocketConnection
protected

Definition at line 135 of file vtkPVSessionServer.h.

§ MultipleConnection

bool vtkPVSessionServer::MultipleConnection
protected

Definition at line 137 of file vtkPVSessionServer.h.

§ Internal

vtkInternals* vtkPVSessionServer::Internal
protected

Definition at line 139 of file vtkPVSessionServer.h.


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