FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
GridID.hpp
1#ifndef __FIBER_GRIDID_HPP
2#define __FIBER_GRIDID_HPP "Created 27.02.2001 21:42:27 by werner"
3
4#include "BundleAPI.h"
5#include <fiber/grid/Grid.hpp>
6#include <memcore/Persistencer.hpp>
7#include <list>
8#include <fiber/grid/FieldID.hpp>
9#include <fiber/grid/SkeletonID.hpp>
10#include "SliceInfo.hpp"
11
12
13namespace Fiber
14{
15 using std::list;
16 using std::string;
18
19class BUNDLE_API GridList;
20class BUNDLE_API SliceMap;
21class BUNDLE_API Slice;
22
28class BUNDLE_API GridID : public ReferenceBase<GridID>, public Intercube
29{
30 string name;
31 SliceMap*SL;
32
34 GridID(const string&s);
35
36 GridID(const GridID&);
37 void operator=(const GridID&);
38
39 WeakPtr<GridID> ParentGrid;
40
42 ChildGrids_t ChildGrids;
43
44public:
45 friend class GridList;
46 friend class SliceList;
47
52
57
60
67
72
77
78 ~GridID();
79
84 void insert(double T, const WeakPtrSlice&S);
85
86
87 WeakPtrSlice prev(double&T) const;
88 WeakPtrSlice next(double&T) const;
89
90
94 bool insertChild(const WeakPtr<GridID>&ChildGrid);
95
99 bool isParentOf(const WeakPtr<GridID>&PossibleChildGrid);
100
104 bool isChildOf(const WeakPtr<GridID>&PossibleParentGrid);
105
110 {
111 return ParentGrid;
112 }
113
118 {
120 virtual bool apply(const WeakPtr<GridID>&ChildGrid) = 0;
121
122 virtual ~Iterator();
123 };
124
128 int iterate(Iterator&It) const;
129
131 const string&Name() const
132 {
133 return name;
134 }
135
136 void setName(const string&NewName)
137 {
138 name = NewName;
139 }
140
141 bool equal(const string&s);
142};
143
144} /* namespace Fiber */
145
146#endif /* __FIBER_GRIDID_HPP */
constexpr complex< _Tp > & operator=(const _Tp &)
constexpr bool equal(_II1 __first1, _II1 __last1, _II2 __first2)
basic_string< char > string
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
A grid identifier.
Definition GridID.hpp:29
SkeletonsOnGrid_t SkeletonsOnGrid
Information about all skeletons available for this Grid ID which refers to all Grids on a given Bundl...
Definition GridID.hpp:66
const string & Name() const
Get the name associated with this Grid ID.
Definition GridID.hpp:131
std::map< SkeletonID, SliceList_t > IndexDepthSkeletons_t
List of available skeletons per index depth.
Definition GridID.hpp:56
const WeakPtr< GridID > & getParent() const
Get the parent of the current Grid.
Definition GridID.hpp:109
std::set< Info< Slice > > SliceList_t
A list of time entries.
Definition GridID.hpp:51
FieldList_t FieldList
A list of fields that reside on Grid objects.
Definition GridID.hpp:76
std::set< WeakPtr< FieldID > > FieldList_t
A list of field identifiers.
Definition GridID.hpp:71
std::map< int, IndexDepthSkeletons_t > SkeletonsOnGrid_t
List of all available skeletons, ordered by index depth.
Definition GridID.hpp:59
A sequence of Grid objects with identifiers.
Definition GridList.hpp:15
An helper class for a collection of slices.
Definition SliceMap.hpp:14
Given a fragmented field of curvilinear coordinates, (3D array of coordinates), build a uniform Grid ...
Definition FAQ.dox:2
Callback Iterator object for kids.
Definition GridID.hpp:118
virtual bool apply(const WeakPtr< GridID > &ChildGrid)=0
Virtual nursing function.