|
FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
|
A fish scale for dealing with dependencies on grid objects. More...
#include <FishGrid.hpp>
Public Member Functions | |
| Fish (const string &s="grid", int prior=2) | |
| Constructor, optionally pass a parameter of this grid's name (ie. | |
| virtual | ~Fish () |
| Destructor. | |
| void | registerGridAsOutput () |
| Make grid visible as output. | |
| Fiber::Bundle::GridInfo_t | findMostRecentGrid (GridSelector &GS, const RefPtr< ValuePool > &VP, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const |
| This is a convenience function to find the most recent grid for the current time ( Fish<Slice>() or virtual function getTime() ). | |
| Fiber::Bundle::GridInfo_t | findMostRecentGrid (const RefPtr< ValuePool > &VP, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const |
| Find the most recent grid for the current time ( Fish<Slice>() or virtual function getTime() ). | |
| virtual GridSelector | getGridSelector (const RefPtr< ValuePool > &VP) const |
| Provide the current Grid selector, which usually would be taken from the intrinsic TypedSlot, such as equivalent to: | |
| Fiber::Info< Fiber::Skeleton > | getRefinementLevel (int Level, const RefPtr< ValuePool > &VP, int IndexDepth=0, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const override |
| Get an refinement level for the given spacetime based on the GridSelector as returned by getGridSelector(). | |
| bool | IterateLevelsOnMostRecentGrid (LevelIterator &LI, const RefPtr< ValuePool > &Context, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const |
| Iterate over all the selected levels of a Grid via an instance of the LevelIterator. | |
| RefPtr< Fiber::Field > | getField (const Fiber::FieldSelector &FS, const RefPtr< ValuePool > &VP, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) |
| Retrieve a field for the given FieldSelector on the currently selected Grid. | |
Public Attributes | |
| TypedSlot< Fiber::Grid > | MyGrid |
A fish scale for dealing with dependencies on grid objects.
VISH input objects and routines to retrieve a Grid object from a fiber bundle data set.
| Wizt::Fish< Fiber::Grid >::Fish | ( | const string & | s = "grid", |
| int | prior = 2 |
||
| ) |
Constructor, optionally pass a parameter of this grid's name (ie.
the name of the slot that will refer to a grid object).
| Fiber::Bundle::GridInfo_t Wizt::Fish< Fiber::Grid >::findMostRecentGrid | ( | GridSelector & | GS, |
| const RefPtr< ValuePool > & | VP, | ||
| const Fiber::BundlePtr & | SpaceTime = Fiber::BundlePtr(NullPtr()) |
||
| ) | const |
This is a convenience function to find the most recent grid for the current time ( Fish<Slice>() or virtual function getTime() ).
This is only valid when using the GridSelector of the Fish's Grid. If you add a secondary Grid via a TypedSlot<Grid> you must not use this function for the second Grid. Use the findMostRecentGrid() function of the GridSelector instead. Here is an example when accessing one Fish Grid and a secondary Grid in an update() function of a VObject derived from a Fish<Grid>:
| GS | Return information about the current grid selection. |
| VP | The context relative to which this selection is to be made |
| SpaceTime | An optional alternative spacetime from which this grid is retrieved. It will be queried under the same name and under the same time as here. |
Referenced by Wizt::FragmentPainter::renderFragments(), Fiber::NamedField< FieldName >::update(), and Wizt::FieldObject::update().
| RefPtr< Field > Wizt::Fish< Fiber::Grid >::getField | ( | const Fiber::FieldSelector & | FS, |
| const RefPtr< ValuePool > & | VP, | ||
| const Fiber::BundlePtr & | SpaceTime = Fiber::BundlePtr(NullPtr() ) |
||
| ) |
Retrieve a field for the given FieldSelector on the currently selected Grid.
This field may possibly not exist yet on this Grid and must be computed first via EvalGrid(). This may be computationally intensive.
|
virtual |
Provide the current Grid selector, which usually would be taken from the intrinsic TypedSlot, such as equivalent to:
However, for special cases a child class may this function and take the GridSelector from another source.
Reimplemented in Wizt::VertexFieldCollection.
Referenced by Fiber::NamedField< FieldName >::update().
|
inline |
Iterate over all the selected levels of a Grid via an instance of the LevelIterator.
Use code like this in a subclass derived from Fish<Field> :