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
|
/*=========================================================================
Program: Visualization Toolkit
Module: $RCSfile: vtkMultiGroupDataSetInternal.h,v $
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 vtkMultiGroupDataSetInternal - internal structure for vtkMultiGroupDataSet
// .SECTION Description
// vtkMultiGroupDataSetInternal is used in internal implementation of
// vtkMultiGroupDataSet. This should only be accessed by friends
// and sub-classes of that class.
#ifndef __vtkMultiGroupDataSetInternal_h
#define __vtkMultiGroupDataSetInternal_h
#include <vtkstd/vector>
#include <vtkstd/algorithm>
#include "vtkDataObject.h"
#include "vtkSmartPointer.h"
class vtkMGDSNode;
struct vtkMultiGroupDataSetInternal
{
typedef vtkstd::vector<vtkSmartPointer<vtkDataObject> > GroupDataSetsType;
typedef GroupDataSetsType::iterator GroupDataSetsIterator;
typedef vtkstd::vector<GroupDataSetsType> DataSetsType;
typedef DataSetsType::iterator DataSetsIterator;
DataSetsType DataSets;
};
struct vtkMGDSNodeRef
{
vtkMGDSNodeRef(int group, int index) : Group(group), Index(index) {}
vtkstd_bool operator==(const vtkMGDSNodeRef& rhs)
{
return (this->Group == rhs.Group) && (this->Index == rhs.Index);
}
vtkstd_bool operator!=(const vtkMGDSNodeRef& rhs)
{
return (this->Group != rhs.Group) || (this->Index != rhs.Index);
}
int Group;
int Index;
};
class vtkMGDSNode
{
public:
protected:
vtkstd::vector<vtkMGDSNodeRef> Parents;
vtkstd::vector<vtkMGDSNodeRef> Children;
};
#endif
|