FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
Fish.hpp
1#ifndef __FISH_BONE_FISH_HPP
2#define __FISH_BONE_FISH_HPP
3
4#include "fishboneDllApi.h"
5
6#include <ocean/plankton/VObject.hpp>
7#include <ocean/plankton/VSkale.hpp>
8
9#include <ocean/shrimp/Range.hpp>
10
11#include <fish/fiber/bundle/Bundle.hpp>
12#include "BundleInput.hpp"
13
14namespace Wizt
15{
16 using std::pair;
17
29template <class FiberType>
30 struct Fish;
31
32typedef TypedSlot<Fiber::BundlePtr> BundleSlot;
33
84template <>
85struct fishbone_API Fish<VObject> : public VSkale
86{
87};
88
92template <>
93struct fishbone_API Fish<double> : public Fish<VObject>
94{
96 Fish();
97
99 ~Fish();
100
104 virtual double getTime(const RefPtr<ValuePool>&VP, const RefPtr<Fiber::Bundle>&SpaceTime) const = 0;
105
110 virtual int getMaxRefinementLevel(const RefPtr<ValuePool>&VP) const;
111 virtual int getMinRefinementLevel(const RefPtr<ValuePool>&VP) const;
112
114 getRefinementLevel(int Level,
115 const RefPtr<ValuePool>&VP,
116 int IndexDepth = 0,
117 const Fiber::BundlePtr&SpaceTime = Fiber::BundlePtr(NullPtr() ) ) const = 0;
118
125 struct fishbone_API LevelIterator
126 {
128 virtual ~LevelIterator() = 0;
129
138 virtual bool apply(const Fiber::Info<Fiber::Skeleton>&RefinementSkeleton,
139 int Level,
140 const RefPtr<Fiber::Grid>&GridWithCoarsetRefinementLevel,
141 const RefPtr<ValuePool>&Context) = 0;
142 };
143
148 bool IterateLevels(LevelIterator&LI,
150 const RefPtr<ValuePool>&Context) const;
151};
152
153
154} // namespace Wizt
155
156#endif /* __FISH_BONE_FISH_HPP */
_Expr< _ValFunClos< _ValArray, _Tp >, _Tp > apply(_Tp __func(_Tp)) const
Convenience class that implements a pointer to a Bundle object but adds some useful member funtions t...
Definition Bundle.hpp:779
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
std::nullptr_t NullPtr
note: cannot derive from FloatingSkeletonRenderer as long as independent base class TriangleRenderer ...
Definition Lytica.hpp:7