/usr/include/paraview/vtkSMProxyManager.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 | /*=========================================================================
Program: ParaView
Module: vtkSMProxyManager.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 vtkSMProxyManager - singleton/facade to vtkSMSessionProxyManager
// .SECTION Description
// vtkSMProxyManager is a singleton/facade that creates and manages proxies.
// It maintains a map of vtkSMSessionProxyManager and delegate all proxy related
// call to the appropriate one based on the provided session.
// .SECTION See Also
// vtkSMSessionProxyManager, vtkSMProxyDefinitionManager
#ifndef vtkSMProxyManager_h
#define vtkSMProxyManager_h
#include "vtkPVServerManagerCoreModule.h" //needed for exports
#include "vtkSMObject.h"
#include "vtkSmartPointer.h" // Needed for the singleton
class vtkPVXMLElement;
class vtkSMPluginManager;
class vtkSMProxy;
class vtkSMProxyLocator;
class vtkSMProxySelectionModel;
class vtkSMReaderFactory;
class vtkSMSession;
class vtkSMSessionProxyManager;
class vtkSMStateLoader;
class vtkSMUndoStackBuilder;
class vtkSMWriterFactory;
class VTKPVSERVERMANAGERCORE_EXPORT vtkSMProxyManager : public vtkSMObject
{
public:
vtkTypeMacro(vtkSMProxyManager, vtkSMObject);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Provides access to the global ProxyManager.
static vtkSMProxyManager* GetProxyManager();
// Description:
// Free the singleton
static void Finalize();
// Description:
// Allow to check if the Singleton has been initialized and has a reference
// to a valid ProxyManager
static bool IsInitialized();
// Description:
// These methods can be used to obtain the ProxyManager version number.
// Returns the major version number eg. if version is 2.9.1
// this method will return 2.
static int GetVersionMajor();
// Description:
// These methods can be used to obtain the ProxyManager version number.
// Returns the minor version number eg. if version is 2.9.1
// this method will return 9.
static int GetVersionMinor();
// Description:
// These methods can be used to obtain the ProxyManager version number.
// Returns the patch version number eg. if version is 2.9.1
// this method will return 1.
static int GetVersionPatch();
// Description:
// Returns a string with the format "paraview version x.x.x, Date: YYYY-MM-DD"
static const char* GetParaViewSourceVersion();
// Description:
// Returns the current active session. If no active session is set, and
// there's only one registered vtkSMSession with vtkProcessModule, then that
// session is automatically treated as the active session.
vtkSMSession* GetActiveSession();
// Description:
// Set the active session. It's acceptable to set the active session as NULL
// (or 0 in case of sessionId), however GetActiveSession() may automatically
// pick an active session if none is provided.
void SetActiveSession(vtkSMSession* session);
void SetActiveSession(vtkIdType sessionId);
// Description:
// Convenient method to get the active vtkSMSessionProxyManager. If no
vtkSMSessionProxyManager* GetActiveSessionProxyManager();
// Description:
// Return the corresponding vtkSMSessionProxyManager and if any,
// then create a new one.
vtkSMSessionProxyManager* GetSessionProxyManager(vtkSMSession* session);
// Description:
// Calls forwarded to the active vtkSMSessionProxyManager, if any. Raises
// errors if no active session manager can be determined (using
// GetActiveSessionProxyManager()).
vtkSMProxy* NewProxy(const char* groupName,
const char* proxyName, const char* subProxyName = NULL);
void RegisterProxy(const char* groupname, const char* name, vtkSMProxy* proxy);
vtkSMProxy* GetProxy(const char* groupname, const char* name);
void UnRegisterProxy(const char* groupname, const char* name, vtkSMProxy*);
const char* GetProxyName(const char* groupname, unsigned int idx);
const char* GetProxyName(const char* groupname, vtkSMProxy* proxy);
// Description:
// Get/Set the undo-stack builder if the application is using undo-redo
// mechanism to track changes.
void SetUndoStackBuilder(vtkSMUndoStackBuilder* builder);
vtkGetObjectMacro(UndoStackBuilder, vtkSMUndoStackBuilder);
// Description:
// PluginManager keeps track of plugins loaded on various sessions.
// This provides access to the application-wide plugin manager.
vtkGetObjectMacro(PluginManager, vtkSMPluginManager);
// Description:
// Provides access to the reader factory. Before using the reader factory, it
// is essential that it's configured correctly.
vtkGetObjectMacro(ReaderFactory, vtkSMReaderFactory);
// Description:
// Provides access to the writer factory. Before using the reader factory, it
// is essential that it's configured correctly.
vtkGetObjectMacro(WriterFactory, vtkSMWriterFactory);
enum eventId
{
ActiveSessionChanged = 9753
};
struct RegisteredProxyInformation
{
vtkSMProxy* Proxy;
const char* GroupName;
const char* ProxyName;
// Set when the register/unregister event if fired for registration of
// a compound proxy definition.
unsigned int Type;
enum
{
PROXY =0x1,
COMPOUND_PROXY_DEFINITION = 0x2,
LINK = 0x3,
};
};
struct ModifiedPropertyInformation
{
vtkSMProxy* Proxy;
const char* PropertyName;
};
struct LoadStateInformation
{
vtkPVXMLElement* RootElement;
vtkSMProxyLocator* ProxyLocator;
};
struct StateChangedInformation
{
vtkSMProxy* Proxy;
vtkPVXMLElement* StateChangeElement;
};
//BTX
protected:
vtkSMProxyManager();
~vtkSMProxyManager();
#ifndef __WRAP__
static vtkSMProxyManager* New();
#endif
friend class vtkSMSessionProxyManager;
// Description:
// Connections updated. Update the active session accordingly.
void ConnectionsUpdated(vtkObject*, unsigned long, void*);
vtkSMUndoStackBuilder* UndoStackBuilder;
vtkSMPluginManager* PluginManager;
vtkSMReaderFactory* ReaderFactory;
vtkSMWriterFactory* WriterFactory;
private:
class vtkPXMInternal;
vtkPXMInternal* PXMStorage;
static vtkSmartPointer<vtkSMProxyManager> Singleton;
vtkSMProxyManager(const vtkSMProxyManager&); // Not implemented
void operator=(const vtkSMProxyManager&); // Not implemented
//ETX
};
#endif
|