/usr/include/paraview/vtkSMBoundsDomain.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 | /*=========================================================================
Program: ParaView
Module: vtkSMBoundsDomain.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 vtkSMBoundsDomain - double range domain based on data set bounds
// .SECTION Description
// vtkSMBoundsDomain extends vtkSMDoubleRangeDomain to add support to determine
// the valid range for the values based on the dataset bounds. There are several
// \c Modes which can be used to control how the range is computed based on the
// data bounds (defined by the vtkSMBoundsDomain::Modes enum).
// \li \c NORMAL : this is the basic mode where the domain will have 3 ranges which
// are the min and max for the bounds along each of the coordinate axis.
// \li \c MAGNITUDE: the domain has a single range set to (-magn/2.0, +magn/2.0)
// where magn is the magnitude of the diagonal.
// \li \c ORIENTED_MAGNITUDE: same as MAGNITUDE, but instead of the dialog, a
// vector determined using two additional required properties with functions
// Normal, and Origin is used.
// li \c SCALED_EXTENT: the range is set to (0, maxbounds * this->ScaleFactor)
// where maxbounds is the length of the longest axis for the bounding box.
// li \c APPROXIMATE_CELL_LENGTH: approximation for cell length computed using the
// expression (diameter/ (cube_root(numCells)) * this->ScaleFactor.
//
// To determine the input data bounds, this domain depends on a required
// property with function \c Input. The data-information from the source-proxy
// set as the value for that property is used to determine the bounds.
//
// Supported XML attributes:
// \li \c mode : used to specify the Mode. Value can be "normal", "magnitude",
// "oriented_magnitude", "scaled_extent", or "approximate_cell_length".
// \li \c scale_factor : used in SCALED_EXTENT and APPROXIMATE_CELL_LENGTH mode.
// Value is a floating point number that is used as the scale factor.
#ifndef vtkSMBoundsDomain_h
#define vtkSMBoundsDomain_h
#include "vtkPVServerManagerCoreModule.h" //needed for exports
#include "vtkSMDoubleRangeDomain.h"
class vtkPVDataInformation;
class vtkSMProxyProperty;
class VTKPVSERVERMANAGERCORE_EXPORT vtkSMBoundsDomain : public vtkSMDoubleRangeDomain
{
public:
static vtkSMBoundsDomain* New();
vtkTypeMacro(vtkSMBoundsDomain, vtkSMDoubleRangeDomain);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Update self checking the "unchecked" values of all required
// properties. Overwritten by sub-classes.
virtual void Update(vtkSMProperty*);
// Description:
vtkSetClampMacro(Mode, int, 0, 3);
vtkGetMacro(Mode, int);
// Description:
// SCALED_EXTENT: is used for vtkPVScaleFactorEntry.
enum Modes
{
NORMAL,
MAGNITUDE,
ORIENTED_MAGNITUDE,
SCALED_EXTENT,
APPROXIMATE_CELL_LENGTH
};
vtkGetMacro(ScaleFactor, double);
// Description:
// Overridden to handle APPROXIMATE_CELL_LENGTH.
virtual int SetDefaultValues(vtkSMProperty* property, bool use_unchecked_values);
protected:
vtkSMBoundsDomain();
~vtkSMBoundsDomain();
// Description:
// Set the appropriate ivars from the xml element. Should
// be overwritten by subclass if adding ivars.
virtual int ReadXMLAttributes(vtkSMProperty* prop, vtkPVXMLElement* element);
// Obtain the data information from the requried property with
// function "Input", if any.
vtkPVDataInformation* GetInputInformation();
void SetDomainValues(double bounds[6]);
void UpdateOriented();
int Mode;
double ScaleFactor; // Used only in SCALED_EXTENT and APPROXIMATE_CELL_LENGTH mode.
private:
vtkSMBoundsDomain(const vtkSMBoundsDomain&); // Not implemented
void operator=(const vtkSMBoundsDomain&); // Not implemented
};
#endif
|