|
HDK
|
#include <dataManagerBasedExecutor.h>
Inheritance diagram for VdfDataManagerBasedExecutor< DataManagerType, BaseClass >:Public Member Functions | |
| VdfDataManagerBasedExecutor () | |
| VdfDataManagerBasedExecutor (const VdfExecutorInterface *parentExecutor) | |
| virtual | ~VdfDataManagerBasedExecutor () |
| virtual void | Resize (const VdfNetwork &network) override |
| virtual void | SetOutputValue (const VdfOutput &output, const VdfVector &value, const VdfMask &mask) 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 |
Protected Member Functions | |
| virtual const VdfVector * | _GetInputValue (const VdfConnection &connection, const VdfMask &mask) const override |
| virtual const VdfVector * | _GetOutputValueForReading (const VdfOutput &output, const VdfMask &mask) const override |
| 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 bool | _InvalidateOutput (const VdfOutput &output, const VdfMask &invalidationMask) 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 Attributes | |
| DataManagerType | _dataManager |
Base class for executors that use a data manager.
This implements much of the API from VdfExecutorInterface that simply passes the work on to a data manager.
Definition at line 31 of file dataManagerBasedExecutor.h.
|
inline |
Default constructor.
Definition at line 37 of file dataManagerBasedExecutor.h.
|
inlineexplicit |
Construct with a parent executor.
Definition at line 41 of file dataManagerBasedExecutor.h.
|
inlinevirtual |
Destructor.
Definition at line 48 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotected |
Clears the data for a specific output on this executor.
Definition at line 132 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Returns value for the cache that flows across connection.
Reimplemented in EfPageCacheBasedExecutor< EngineType, DataManagerType >, VdfDataManagerBasedSubExecutor< DataManagerType, BaseClass >, VdfDataManagerBasedSubExecutor< DataManagerType, VdfExecutorInterface >, and VdfDataManagerBasedSubExecutor< DataManagerType, VdfSpeculationExecutorBase >.
Definition at line 107 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Returns an output value for reading.
Reimplemented in EfPageCacheBasedExecutor< EngineType, DataManagerType >, VdfDataManagerBasedSubExecutor< DataManagerType, BaseClass >, VdfDataManagerBasedSubExecutor< DataManagerType, VdfExecutorInterface >, and VdfDataManagerBasedSubExecutor< DataManagerType, VdfSpeculationExecutorBase >.
Definition at line 115 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Returns an output value for writing.
Definition at line 124 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Called during invalidation to mark outputs as invalid and determine when the traversal can terminate early.
incomingInput is the VdfInput by which this output was reached during invalidation traversal, or NULL if output is one of the first-traversed outputs.
Returns true if there was anything to invalidate and false if output was already invalid.
Definition at line 156 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Returns true if the output is already invalid for the given invalidationMask.
Definition at line 140 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Called to set destOutput's buffer output to be a reference to the buffer output of sourceOutput.
Definition at line 176 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Mark the output as having been visited. This is only to be used by the speculation engine to tell its parent executor that an output has been visited and should be marked for invalidation.
Definition at line 194 of file dataManagerBasedExecutor.h.
|
inlineoverrideprotectedvirtual |
Called before invalidation begins to update the timestamp that will be written for every VdfOutput visited during invalidation. This timestamp is later used to identify outputs for mung buffer locking.
Definition at line 167 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Duplicates the output data associated with sourceOutput and copies it to destOutput.
Definition at line 80 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Returns true, if the invalidation timestamps between the source and dest outputs do not match, i.e. the source output should be mung buffer locked.
Definition at line 95 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Returns true of the data manager is empty.
Definition at line 88 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Resize the executor data manager to accommodate the given network.
Definition at line 52 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Sets the cached value for a given output.
If the output already contains data, it will be merged with the new data as indicated by value and mask.
Reimplemented in VdfSpeculationExecutor< EngineType, DataManagerType >, and EfPageCacheBasedExecutor< EngineType, DataManagerType >.
Definition at line 61 of file dataManagerBasedExecutor.h.
|
inlineoverridevirtual |
Transfers the value to the given output.
Reimplemented in VdfSpeculationExecutor< EngineType, DataManagerType >.
Definition at line 70 of file dataManagerBasedExecutor.h.
|
protected |
Definition at line 204 of file dataManagerBasedExecutor.h.