The Vish Visualization Shell 0.3
Vish
Classes | Public Member Functions | Public Attributes | List of all members
Wizt::VRequest Class Reference

Request structure. More...

#include <ocean/plankton/VRequest.hpp>

Inheritance diagram for Wizt::VRequest:
MemCore::Ageable Wizt::VFrameBuffer::OffScreenRenderRequest

Classes

class  ID
 An identification object to trace identity of requests. More...
 
class  Incomplete
 Exception class indicating that some request could not be completed. More...
 

Public Member Functions

void addInterface (const RefPtr< InterfaceBase > &I)
 Add an interface class object.
 
bool AllowAsynchronity () const
 May some operation be performed asynchroneous, such as just being initiated here but completed at a later time?
 
bool hasEnforcedSynchronity () const
 Must all operations be synchroneous? If this is true, an operation request will be required to wait and block.
 
 operator const RefPtr< ValuePool > & () const
 A VRequest may be implicitely converted into a reference pointer to a ValuePool.
 
template<typename... SlotList>
auto operator() (SlotList... t) const -> decltype(evaluateSlots(GhostValues, t...))
 Evaluate a set of input slots at once, return the values as a std::tuple<> according to the slot values.
 
VRequestoperator= (const VRequest &VR)=delete
 Assignment constructor, shares all values and the ID.
 
string PoolName () const
 Return the name of the associated value pool.
 
 VRequest (const RefPtr< ValuePool > &Pool, bool Synchronity)
 Constructor, make a request for a local value pool with or without forcing synchroneous (blocking) execution.
 
 VRequest (const VRequest &VR, const RefPtr< ValuePool > &Pool)
 Create a request with same ID but possibly different value pool.
 
- Public Member Functions inherited from MemCore::Ageable
 Ageable () noexcept
 Constructor; remembers birth time from current time counter.
 
constexpr Ageable (age_t t) noexcept
 Constructor with explicit time value.
 
constexpr Ageable (const Ageable &A) noexcept
 Copy constructor.
 
 Ageable (const volatile Ageable &A) noexcept
 Copy constructor.
 
constexpr const AgeablegetAge () const
 Return reference to this age, useful for derived classes.
 
bool isNewerThan (const Ageable &a) const noexcept
 Comparison operator.
 
bool isOlderThan (const Ageable &a) const noexcept
 Comparison operator.
 
bool isYoungerThan (const Ageable &a) const noexcept
 Comparison operator (alias to isNewerThan() )
 
bool operator!= (const Ageable &a) const noexcept
 Comparison operator.
 
bool operator< (const Ageable &a) const noexcept
 Comparison operator.
 
bool operator<= (const Ageable &a) const noexcept
 Comparision operator.
 
bool operator<= (const volatile Ageable &a) const volatile noexcept
 Comparision operator.
 
bool operator== (const Ageable &a) const noexcept
 Comparison operator.
 
bool operator> (const Ageable &a) const noexcept
 Comparison operator.
 
bool operator> (const volatile Ageable &a) const volatile throw ()
 Comparision operator.
 
bool operator>= (const Ageable &a) const noexcept
 Comparision operator.
 
bool operator>= (const volatile Ageable &a) const volatile noexcept
 Comparison operator.
 
constexpr void resetAge () noexcept
 Set time value to InfinitelyOld().
 
void setInfinitelyNew () noexcept
 Set time value to InfinitelyOld().
 
age_t time_value () const noexcept
 Return an object's current age.
 
age_t time_value () const volatile noexcept
 Return an object's current age.
 
Ageabletouch () noexcept
 Mark the current object as being modified "now".
 
age_t update (age_t age) noexcept
 Set the age of the current object to a specific age if that is newer than the current one.
 
age_t update (const Ageable &Other) noexcept
 Set the age of the current object to the age of another object if that other one is newer than the current one.
 
age_t update (const volatile Ageable &Other) volatile noexcept
 Set the age of the current object to the age of another object if that other one is newer than the current one.
 
 ~Ageable () noexcept
 Destructor.
 

Public Attributes

RefPtr< ValuePoolGhostValues
 Eventually, some variables of an request are contained in a value pool.
 

Additional Inherited Members

- Static Public Member Functions inherited from MemCore::Ageable
static const AgeableInfinitelyNew () noexcept
 Return a time that is infinitely in the future (well, sort of).
 
static constexpr const AgeableInfinitelyOld () noexcept
 Return a time that is infinitely in the past (well, sort of).
 
static age_t now () noexcept
 Return the current global time.
 

Detailed Description

Request structure.

Examples
AnemoneBoundingVolume.cpp, InteractivePoint.cpp, QuadDemo.cpp, and SeagrassBoundingVolume.cpp.

Constructor & Destructor Documentation

◆ VRequest()

Wizt::VRequest::VRequest ( const RefPtr< ValuePool > &  Pool,
bool  Synchronity 
)

Constructor, make a request for a local value pool with or without forcing synchroneous (blocking) execution.

Creates a new ID here.

Member Function Documentation

◆ operator const RefPtr< ValuePool > &()

Wizt::VRequest::operator const RefPtr< ValuePool > & ( ) const
inline

A VRequest may be implicitely converted into a reference pointer to a ValuePool.

This simplifies various calls.