10 #ifndef NDSDATAACQUISITIONIMPL_H
11 #define NDSDATAACQUISITIONIMPL_H
15 #include "nds3/impl/nodeImpl.h"
25 class DataAcquisitionImpl:
public NodeImpl
28 DataAcquisitionImpl(
const std::string& name,
49 void push(
const timespec& timestamp,
const T& data);
51 double getFrequencyHz();
52 double getDurationSeconds();
53 double getAmplitude();
55 size_t getMaxElements();
56 size_t getDecimation();
57 size_t getSamplingMode();
68 timespec getStartTimestamp()
const;
101 std::shared_ptr<PVVariableInImpl<T> > m_dataPV;
102 std::shared_ptr<PVVariableOutImpl<double> > m_frequencyPV;
103 std::shared_ptr<PVVariableOutImpl<double> > m_durationPV;
104 std::shared_ptr<PVVariableOutImpl<double> > m_amplitudePV;
105 std::shared_ptr<PVVariableOutImpl<double> > m_offsetPV;
106 std::shared_ptr<PVVariableOutImpl<std::int32_t> > m_decimationPV;
107 std::shared_ptr<PVVariableOutImpl<std::int32_t> > m_samplingmodePV;
108 std::shared_ptr<PVVariableOutImpl<std::int32_t> > m_groundPV;
109 std::shared_ptr<StateMachineImpl> m_stateMachine;
116 #endif // NDSDATAACQUISITIONIMPL_H
Implementation of an output PV object that also stores the value so it does not need to delegate the ...
Definition: dataAcquisitionImpl.h:21
std::function< timespec()> getTimestampPlugin_t
Definition for a function called to retrieve a time.
Definition: definitions.h:279
Implementation of an input PV object that also stores the value so it does not need to delegate the r...
Definition: dataAcquisitionImpl.h:20
Represents a node (channel or channelGroup in the old NDS) which can contain other nodes...
Definition: nodeImpl.h:29
std::function< bool(const state_t, const state_t, const state_t)> allowChange_t
Definition for a function called to allow or deny a state transition.
Definition: definitions.h:271
std::function< void()> stateChange_t
Definition for the function executed during the state transition.
Definition: definitions.h:254
Defines all the enumeration and common types used across the NDS library.