/usr/include/paraview/vtkEquivalenceSet.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 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkEquivalenceSet.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm 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 vtkEquivalenceSet - records groups of integers that are equivalent.
// .SECTION Description
// Useful for connectivity on multiple processes. Run connectivity
// on each processes, then make touching fragments equivalent.
#ifndef vtkEquivalenceSet_h
#define vtkEquivalenceSet_h
#include "vtkPVVTKExtensionsDefaultModule.h" //needed for exports
#include "vtkObject.h"
class vtkIntArray;
class VTKPVVTKEXTENSIONSDEFAULT_EXPORT vtkEquivalenceSet : public vtkObject
{
public:
vtkTypeMacro(vtkEquivalenceSet,vtkObject);
void PrintSelf(ostream& os, vtkIndent indent);
static vtkEquivalenceSet *New();
void Initialize();
void AddEquivalence(int id1, int id2);
// The length of the equivalent array...
// The Domain of the equivalance map is [0, numberOfMembers).
int GetNumberOfMembers();
// Valid only after set is resolved.
// The range of the map is [0 numberOfResolvedSets)
int GetNumberOfResolvedSets() { return this->NumberOfResolvedSets;}
// Return the id of the equivalent set.
int GetEquivalentSetId(int memberId);
// Equivalent set ids are reassinged to be sequential.
// You cannot add anymore equivalences after this is called.
virtual int ResolveEquivalences();
void DeepCopy(vtkEquivalenceSet* in);
// Needed for sending the set over MPI.
// Be very careful with the pointer.
// I guess this means do not write to the memory.
int* GetPointer();
// Free unused memory
void Squeeze();
// Report used memory
vtkIdType Capacity();
// We should fix the pointer API and hide this ivar.
int Resolved;
int GetReference(int memberId);
protected:
vtkEquivalenceSet();
~vtkEquivalenceSet();
int NumberOfResolvedSets;
// To merge connected framgments that have different ids because they were
// traversed by different processes or passes.
vtkIntArray *EquivalenceArray;
// Return the id of the equivalent set.
void EquateInternal(int id1, int id2);
private:
vtkEquivalenceSet(const vtkEquivalenceSet&); // Not implemented.
void operator=(const vtkEquivalenceSet&); // Not implemented.
};
#endif
|