Files
ThirdParty-6/ParaView-5.0.1/ParaViewCore/ServerManager/Core/vtkSMSessionObject.h

60 lines
1.9 KiB
C++

/*=========================================================================
Program: ParaView
Module: vtkSMSessionObject.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkSMSessionObject - superclass for any server manager classes
// that are related to a session
// .SECTION Description
// vtkSMSessionObject provides methods to set and get the relative session
#ifndef vtkSMSessionObject_h
#define vtkSMSessionObject_h
#include "vtkPVServerManagerCoreModule.h" //needed for exports
#include "vtkSMObject.h"
#include <vtkWeakPointer.h> // Needed to keep track of the session
class vtkSMSession;
class vtkSMSessionProxyManager;
class VTKPVSERVERMANAGERCORE_EXPORT vtkSMSessionObject : public vtkSMObject
{
public:
static vtkSMSessionObject* New();
vtkTypeMacro(vtkSMSessionObject, vtkSMObject);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Get/Set the session on wihch this object exists.
// Note that session is not reference counted.
virtual void SetSession(vtkSMSession*);
virtual vtkSMSession* GetSession();
// Description:
// Return the corresponding ProxyManager if any.
virtual vtkSMSessionProxyManager* GetSessionProxyManager();
protected:
vtkSMSessionObject();
~vtkSMSessionObject();
// Identifies the session id to which this object is related.
vtkWeakPointer<vtkSMSession> Session;
private:
vtkSMSessionObject(const vtkSMSessionObject&); // Not implemented
void operator=(const vtkSMSessionObject&); // Not implemented
};
#endif