ChimeraTK-ApplicationCore 04.07.00
Loading...
Searching...
No Matches
ChimeraTK::ArrayOutput< UserType > Class Template Reference

Convenience class for output array accessors (always UpdateMode::push) More...

#include <ArrayAccessor.h>

+ Inheritance diagram for ChimeraTK::ArrayOutput< UserType >:
+ Collaboration diagram for ChimeraTK::ArrayOutput< UserType >:

Public Member Functions

 ArrayOutput (Module *owner, const std::string &name, std::string unit, size_t nElements, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ArrayOutput ()=default
 
- Public Member Functions inherited from ChimeraTK::ArrayAccessor< UserType >
void replace (const ChimeraTK::NDRegisterAccessorAbstractor< UserType > &newAccessor)=delete
 
ArrayAccessor< UserType > & operator= (ArrayAccessor< UserType > &other)=delete
 
 ArrayAccessor (ArrayAccessor< UserType > &&other) noexcept
 Move constructor.
 
ArrayAccessor< UserType > & operator= (ArrayAccessor< UserType > &&other) noexcept
 Move assignment.
 
bool write (ChimeraTK::VersionNumber versionNumber)=delete
 
bool writeDestructively (ChimeraTK::VersionNumber versionNumber)=delete
 
void writeIfDifferent (const std::vector< UserType > &newValue, VersionNumber versionNumber, DataValidity validity)=delete
 
void setAndWrite (const std::vector< UserType > &newValue, VersionNumber versionNumber)=delete
 
bool write ()
 
bool writeDestructively ()
 
void writeIfDifferent (const std::vector< UserType > &newValue)
 
void setAndWrite (const std::vector< UserType > &newValue)
 
 ~ArrayAccessor ()
 
- Public Member Functions inherited from ChimeraTK::InversionOfControlAccessor< ArrayAccessor< UserType > >
virtual ~InversionOfControlAccessor ()
 Unregister at its owner when deleting.
 
void setMetaData (const std::optional< std::string > &name, const std::optional< std::string > &unit={}, const std::optional< std::string > &description={}, const std::optional< std::unordered_set< std::string > > &tags={})
 Change meta data (name, unit, description and optionally tags).
 
void addTag (const std::string &tag)
 Add a tag.
 
void addTags (const std::unordered_set< std::string > &tags)
 Add multiple tags.
 
const std::unordered_set< std::string > & getTags ()
 Return set of tags.
 
 operator VariableNetworkNode ()
 Convert into VariableNetworkNode.
 
 operator VariableNetworkNode () const
 
void replace (ArrayAccessor< UserType > &&other)
 Replace with other accessor.
 
EntityOwnergetOwner () const
 Return the owning module.
 
Model::ProcessVariableProxy getModel () const
 
bool checkMetadataWriteDifference ()
 Checks whether a writeIfDifferent would have to issue a write, even if the payload data is unchanged.
 

Additional Inherited Members

- Public Types inherited from ChimeraTK::ArrayAccessor< UserType >
using value_type = UserType
 
- Protected Member Functions inherited from ChimeraTK::ArrayAccessor< UserType >
 ArrayAccessor (Module *owner, const std::string &name, VariableDirection direction, std::string unit, size_t nElements, UpdateMode mode, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ArrayAccessor ()=default
 Default constructor creates a dysfunctional accessor (to be assigned with a real accessor later)
 
- Protected Member Functions inherited from ChimeraTK::InversionOfControlAccessor< ArrayAccessor< UserType > >
 InversionOfControlAccessor (Module *owner, const std::string &name, VariableDirection direction, std::string unit, size_t nElements, UpdateMode mode, const std::string &description, const std::type_info *valueType, const std::unordered_set< std::string > &tags={})
 Constructor, only used by child class accessors.
 
 InversionOfControlAccessor ()=default
 Default constructor creates a dysfunctional accessor (to be assigned with a real accessor later)
 
std::string completeDescription (EntityOwner *owner, const std::string &description) const
 complete the description with the full description from the owner
 
void registerInModel ()
 Register the variable in the model.
 
void init ()
 Late initialisation of stuff we cannot do in our constructor.
 
void deinit ()
 Early deinitialisation of stuff we cannot do in our destructor.
 
- Protected Attributes inherited from ChimeraTK::InversionOfControlAccessor< ArrayAccessor< UserType > >
VariableNetworkNode _node
 

Detailed Description

template<typename UserType>
class ChimeraTK::ArrayOutput< UserType >

Convenience class for output array accessors (always UpdateMode::push)

Definition at line 97 of file ArrayAccessor.h.

Constructor & Destructor Documentation

◆ ArrayOutput() [1/2]

template<typename UserType >
ChimeraTK::ArrayOutput< UserType >::ArrayOutput ( Module owner,
const std::string &  name,
std::string  unit,
size_t  nElements,
const std::string &  description,
const std::unordered_set< std::string > &  tags = {} 
)

Definition at line 249 of file ArrayAccessor.h.

◆ ArrayOutput() [2/2]

template<typename UserType >
ChimeraTK::ArrayOutput< UserType >::ArrayOutput ( )
default

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