Dev Essential  1.6.3
Loading...
Searching...
No Matches
ddl::mapping::DefaultEngine::ITargetTrigger Class Referenceabstract

interface definition for target triggers that must be implemented More...

#include <mapping_engine.h>

Public Member Functions

virtual ~ITargetTrigger ()=default
 DTOR.
 
virtual std::shared_ptr< MemorygetMemory (size_t data_size)=0
 Get a current memory buffer reference for the target.
 
virtual void update (std::chrono::nanoseconds target_time)=0
 Update call for the target.
 

Detailed Description

interface definition for target triggers that must be implemented

See also
registerForTarget to register the target references

Member Function Documentation

◆ getMemory()

virtual std::shared_ptr< Memory > ddl::mapping::DefaultEngine::ITargetTrigger::getMemory ( size_t data_size)
pure virtual

Get a current memory buffer reference for the target.

Parameters
data_sizethe memory buffer reference size in bytes that is expected
Returns
std::shared_ptr<Memory>

◆ update()

virtual void ddl::mapping::DefaultEngine::ITargetTrigger::update ( std::chrono::nanoseconds target_time)
pure virtual

Update call for the target.

Parameters
target_timethe time for the update can be the trigger time or the update time investigated ba a TimeStrategy

In case of no time strategy set:

  • target_time is set to the source time of the source trigger or data trigger (ISourceTrigger)
  • or target_time is set to the time of the time trigger (ITimeTrigger)

In case of set time strategy:

  • target_time is set to the last, latest, earliest or first source time of the source values that has been updated by ISourceTrigger and are part of the assignments of this target
  • only values from sources will have times! constant values do not have any time
  • also the source values for any function calls are taken into concern
  • if no source time can be obtained (only const or internal update counter of targets), the trigger time is set

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