mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file
Resolves bug-report http://bugs.openfoam.org/view.php?id=2098
This commit is contained in:
@ -0,0 +1,116 @@
|
||||
/*=========================================================================
|
||||
|
||||
Program: ParaView
|
||||
Module: vtkSIProxyProperty.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 vtkSIProxyProperty
|
||||
// .SECTION Description
|
||||
// ServerSide Property use to set Object array as method argument.
|
||||
// Those object could be either SMProxy instance or their SIProxy instance
|
||||
// or the VTK object managed by the SIProxy instance. The type of object is
|
||||
// specified inside the XML definition of the property with the attribute
|
||||
// argument_type=[VTK, SMProxy, SIProxy].
|
||||
|
||||
#ifndef vtkSIProxyProperty_h
|
||||
#define vtkSIProxyProperty_h
|
||||
|
||||
#include "vtkPVServerImplementationCoreModule.h" //needed for exports
|
||||
#include "vtkSIProperty.h"
|
||||
|
||||
class VTKPVSERVERIMPLEMENTATIONCORE_EXPORT vtkSIProxyProperty : public vtkSIProperty
|
||||
{
|
||||
public:
|
||||
static vtkSIProxyProperty* New();
|
||||
vtkTypeMacro(vtkSIProxyProperty, vtkSIProperty);
|
||||
void PrintSelf(ostream& os, vtkIndent indent);
|
||||
|
||||
// Description:
|
||||
// Command that can be used to remove inputs. If set, this
|
||||
// command is called before the main Command is called with
|
||||
// all the arguments.
|
||||
vtkGetStringMacro(CleanCommand);
|
||||
|
||||
// Description:
|
||||
// Remove command is the command called to remove the VTK
|
||||
// object on the server-side. If set, CleanCommand is ignored.
|
||||
// Instead for every proxy that was absent from the proxies
|
||||
// previously pushed, the RemoveCommand is invoked.
|
||||
vtkGetStringMacro(RemoveCommand);
|
||||
|
||||
// When set to true, the property will push a NULL i.e. 0 when there are no
|
||||
// proxies in the property. Not used when CleanCommand or RemoveCommand is
|
||||
// set. Default is false.
|
||||
vtkGetMacro(NullOnEmpty, bool);
|
||||
|
||||
//BTX
|
||||
protected:
|
||||
vtkSIProxyProperty();
|
||||
~vtkSIProxyProperty();
|
||||
|
||||
// Description:
|
||||
// Push a new state to the underneath implementation
|
||||
virtual bool Push(vtkSMMessage*, int);
|
||||
|
||||
// Description:
|
||||
// Parse the xml for the property.
|
||||
virtual bool ReadXMLAttributes(vtkSIProxy* proxyhelper, vtkPVXMLElement* element);
|
||||
|
||||
// Description:
|
||||
// Command that can be used to remove inputs. If set, this
|
||||
// command is called before the main Command is called with
|
||||
// all the arguments.
|
||||
vtkSetStringMacro(CleanCommand);
|
||||
char* CleanCommand;
|
||||
|
||||
// Description:
|
||||
// Remove command is the command called to remove the VTK
|
||||
// object on the server-side. If set, CleanCommand is ignored.
|
||||
// Instead for every proxy that was absent from the proxies
|
||||
// previously pushed, the RemoveCommand is invoked.
|
||||
vtkSetStringMacro(RemoveCommand);
|
||||
char* RemoveCommand;
|
||||
|
||||
// When set to true, the property will push a NULL i.e. 0 when there are no
|
||||
// proxies in the property. Not used when CleanCommand or RemoveCommand is
|
||||
// set. Default is false.
|
||||
vtkSetMacro(NullOnEmpty, bool);
|
||||
bool NullOnEmpty;
|
||||
|
||||
|
||||
enum TypeArg {
|
||||
VTK, SMProxy, SIProxy
|
||||
};
|
||||
|
||||
// Proxy type: VTK (default), SMProxy, Kernel,
|
||||
// In the XML we expect argument_type="VTK" (default value if not set)
|
||||
// argument_type="SMProxy"
|
||||
// argument_type="SIProxy"
|
||||
TypeArg ArgumentType;
|
||||
|
||||
// Base on the ArgumentType will return either the VTK object or the SMProxy object
|
||||
vtkObjectBase* GetObjectBase(vtkTypeUInt32 globalId);
|
||||
|
||||
// Allow to detect if a null argument is really meant to be null
|
||||
bool IsValidNull(vtkTypeUInt32 globalId);
|
||||
|
||||
private:
|
||||
vtkSIProxyProperty(const vtkSIProxyProperty&); // Not implemented
|
||||
void operator=(const vtkSIProxyProperty&); // Not implemented
|
||||
class InternalCache;
|
||||
InternalCache *Cache;
|
||||
|
||||
class vtkObjectCache;
|
||||
vtkObjectCache* ObjectCache;
|
||||
//ETX
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user