HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EfPageCacheExecutor< EngineType, DataManagerType > Class Template Reference

Executes a VdfNetwork to compute a requested set of values. Caches the computed data in a EfPageCacheStorage container and recalls existing data using a page specified via the currently set value on the key output. More...

#include <pageCacheExecutor.h>

+ Inheritance diagram for EfPageCacheExecutor< EngineType, DataManagerType >:

Public Member Functions

 EfPageCacheExecutor (EfPageCacheStorage *cacheStorage)
 
virtual ~EfPageCacheExecutor ()
 
virtual const
VdfExecutorFactoryBase
GetFactory () const overridefinal
 
- Public Member Functions inherited from EfPageCacheBasedExecutor< EngineType, DataManagerType >
 EfPageCacheBasedExecutor (EfPageCacheStorage *cacheStorage)
 
virtual ~EfPageCacheBasedExecutor ()
 
virtual void SetOutputValue (const VdfOutput &output, const VdfVector &value, const VdfMask &mask) override
 
void WillDeleteNode (const VdfNode &node)
 
- Public Member Functions inherited from VdfDataManagerBasedExecutor< DataManagerType, VdfExecutorInterface >
 VdfDataManagerBasedExecutor ()
 
 VdfDataManagerBasedExecutor (const VdfExecutorInterface *parentExecutor)
 
virtual ~VdfDataManagerBasedExecutor ()
 
virtual void Resize (const VdfNetwork &network) override
 
virtual bool TakeOutputValue (const VdfOutput &output, VdfVector *value, const VdfMask &mask) override
 
virtual void DuplicateOutputData (const VdfOutput &sourceOutput, const VdfOutput &destOutput) override
 
virtual bool IsEmpty () const override
 
virtual bool HasInvalidationTimestampMismatch (const VdfOutput &source, const VdfOutput &dest) const override
 
- Public Member Functions inherited from VdfExecutorInterface
 VdfExecutorInterface (const VdfExecutorInterface &)=delete
 
VdfExecutorInterfaceoperator= (const VdfExecutorInterface &)=delete
 
virtual VDF_API ~VdfExecutorInterface ()
 
VDF_API void Run (const VdfSchedule &schedule, VdfExecutorErrorLogger *errorLogger=NULL)
 
VDF_API void Run (const VdfSchedule &schedule, const VdfRequest &computeRequest, VdfExecutorErrorLogger *errorLogger=NULL)
 
VDF_API void RegisterObserver (const VdfExecutorObserver *observer) const
 
VDF_API void UnregisterObserver (const VdfExecutorObserver *observer) const
 
const VdfVectorGetOutputValue (const VdfOutput &output, const VdfMask &mask) const
 
const VdfExecutorInterfaceGetParentExecutor () const
 
VDF_API void SetParentExecutor (const VdfExecutorInterface *parentExecutor)
 
VDF_API void InvalidateValues (const VdfMaskedOutputVector &invalidationRequest)
 
VDF_API void InvalidateTopologicalState ()
 
VDF_API void ClearData ()
 
VDF_API void ClearDataForOutput (const VdfId outputId, const VdfId nodeId)
 
void IncrementExecutorInvalidationTimestamp ()
 
void InheritExecutorInvalidationTimestamp (const VdfExecutorInterface &executor)
 
VdfInvalidationTimestamp GetExecutorInvalidationTimestamp () const
 
void SetInterruptionFlag (const std::atomic_bool *interruptionFlag)
 
const std::atomic_bool * GetInterruptionFlag () const
 
bool HasBeenInterrupted () const
 
void SetExecutionStats (VdfExecutionStats *stats)
 
VdfExecutionStatsGetExecutionStats () const
 

Additional Inherited Members

- Protected Member Functions inherited from EfPageCacheBasedExecutor< EngineType, DataManagerType >
virtual const VdfVector_GetInputValue (const VdfConnection &connection, const VdfMask &mask) const override
 
virtual const VdfVector_GetOutputValueForReading (const VdfOutput &output, const VdfMask &mask) const override
 
- Protected Member Functions inherited from VdfDataManagerBasedExecutor< DataManagerType, VdfExecutorInterface >
virtual VdfVector_GetOutputValueForWriting (const VdfOutput &output) const override
 
void _ClearDataForOutput (const VdfId outputId, const VdfId nodeId) override
 
virtual bool _IsOutputInvalid (const VdfId outputId, const VdfMask &invalidationMask) const override
 
virtual void _UpdateInvalidationTimestamp () override
 
virtual void _SetReferenceOutputValue (const VdfOutput &destOutput, const VdfOutput &sourceOutput, const VdfMask &sourceMask) const override
 
virtual void _TouchOutput (const VdfOutput &output) const override
 
- Protected Member Functions inherited from VdfExecutorInterface
VDF_API VdfExecutorInterface ()
 
VDF_API VdfExecutorInterface (const VdfExecutorInterface *parentExecutor)
 
- Protected Attributes inherited from VdfDataManagerBasedExecutor< DataManagerType, VdfExecutorInterface >
DataManagerType _dataManager
 

Detailed Description

template<template< typename > class EngineType, typename DataManagerType>
class EfPageCacheExecutor< EngineType, DataManagerType >

Executes a VdfNetwork to compute a requested set of values. Caches the computed data in a EfPageCacheStorage container and recalls existing data using a page specified via the currently set value on the key output.

This executor stores its data in the output-member data manager.

Definition at line 36 of file pageCacheExecutor.h.

Constructor & Destructor Documentation

template<template< typename > class EngineType, typename DataManagerType >
EfPageCacheExecutor< EngineType, DataManagerType >::EfPageCacheExecutor ( EfPageCacheStorage cacheStorage)
inlineexplicit

Constructor.

Definition at line 59 of file pageCacheExecutor.h.

template<template< typename > class EngineType, typename DataManagerType >
virtual EfPageCacheExecutor< EngineType, DataManagerType >::~EfPageCacheExecutor ( )
inlinevirtual

Destructor.

Definition at line 65 of file pageCacheExecutor.h.

Member Function Documentation

template<template< typename > class EngineType, typename DataManagerType >
virtual const VdfExecutorFactoryBase& EfPageCacheExecutor< EngineType, DataManagerType >::GetFactory ( ) const
inlinefinaloverridevirtual

Factory construction.

Implements VdfExecutorInterface.

Definition at line 69 of file pageCacheExecutor.h.


The documentation for this class was generated from the following file: