26 const char*what()
const throw()
27 {
return "FragmentSkeleton Exception"; }
32 const char*what()
const throw()
33 {
return "FragmentSkeleton: No Vertices in Grid object"; }
36static const char*MinFieldName();
37static const char*MaxFieldName();
71static Skeleton& makeFragments(Grid&G)
78static RefPtr<Representation> getFragmentsAsVertices(
const Grid&G)
80 RefPtr<Skeleton> Vertices = G.findVertices();
81 if (!Vertices)
return NullPtr();
83 RefPtr<Skeleton> Fragments = getFragments(G);
84 if (!Fragments)
return NullPtr();
86 return (*Fragments)( Vertices );
89static Representation&makeFragmentsAsVertices(Grid&G)
91 RefPtr<Skeleton> Vertices = G.findVertices();
92 if (!Vertices)
throw NoVertices();
94 Skeleton& Fragments = makeFragments(G);
96 return Fragments[ Vertices ];
99static RefPtr<Field> makeFragmentNames(Grid&G)
101 return makeFragmentsAsVertices(G)[ FIBER_POSITIONS ];
104static Representation&makeFragmentCoordinates(Grid&G,
const RefPtr<Chart>&C)
106 Skeleton& Fragments = makeFragments(G);
107 return Fragments[ C ];
110static RefPtr<Field> makeFragmentCoordinatesCenter(Grid&G,
const RefPtr<Chart>&C)
112 return makeFragmentCoordinates(G, C)[ FIBER_POSITIONS ];
115static RefPtr<Field> makeFragmentCoordinatesMin(Grid&G,
const RefPtr<Chart>&C)
117 return makeFragmentCoordinates(G, C)[ MaxFieldName() ];
120static RefPtr<Field> makeFragmentCoordinatesMax(Grid&G,
const RefPtr<Chart>&C)
122 return makeFragmentCoordinates(G, C)[ MaxFieldName() ];
125 RefPtr<Grid> TheGrid;
127 FragmentSkeleton(
const RefPtr<Grid>&g)
131 Skeleton& makeFragments()
134 return makeFragments(*TheGrid);
137 RefPtr<Field> makeFragmentNames()
const
140 return makeFragmentNames(*TheGrid);
145 RefPtr<Field> F = makeFragmentNames();
147 RefPtr<FragmentNamesMemArray_t>
A = F->getData();
IndexTypeConfig< sizeof(void *)>::index_t index_t
Define the index type as according to the size of a pointer, i.e.
Definition Index.hpp:22
static SkeletonID ID(const Grid &G)
Return the skeleton ID which is used to store fragment information.
Definition FragmentSkeleton.hpp:50