irioCoreCpp Library Module  2.1.0
terminalsSignalGeneration.h
1 #pragma once
2 
3 #include <vector>
4 
5 #include "terminals/terminalsBase.h"
6 
7 namespace irio {
15  public:
29  const NiFpga_Session &session,
30  const Platform &platform);
31 
37  std::uint8_t getSGNo() const;
38 
49  std::uint32_t getSGFref(const std::uint32_t n) const;
50 
57  std::vector<std::uint32_t> getVectorSGFrefs() const;
58 
68  std::uint8_t getSGSignalType(const std::uint32_t n) const;
69 
79  std::uint32_t getSGAmp(const std::uint32_t n) const;
80 
90  std::uint32_t getSGFreq(const std::uint32_t n) const;
91 
101  std::uint32_t getSGPhase(const std::uint32_t n) const;
102 
112  std::uint32_t getSGUpdateRate(const std::uint32_t n) const;
113 
123  void setSGSignalType(const std::uint32_t n, const std::uint8_t value) const;
124 
134  void setSGAmp(const std::uint32_t n, const std::uint32_t value) const;
135 
145  void setSGFreqDecimation(const std::uint32_t n,
146  const std::uint32_t value) const;
147 
157  void setSGPhase(const std::uint32_t n, const std::uint32_t value) const;
158 
170  void setSGUpdateRateDecimation(const std::uint32_t n,
171  const std::uint32_t value) const;
172 };
173 
174 } // namespace irio
175 
Responsible for managing the parsing of resources for a bitfile.
Definition: parserManager.h:76
Generic Platform class.
Definition: platforms.h:23
Base class for all terminals.
Definition: terminalsBase.h:21
Class managing all terminals related to the signal generation functionality of the RIO device.
void setSGUpdateRateDecimation(const std::uint32_t n, const std::uint32_t value) const
Configures the update rate decimation for a specific signal generator.
std::uint32_t getSGPhase(const std::uint32_t n) const
Returns the phase of the signal for a specific signal generator.
void setSGSignalType(const std::uint32_t n, const std::uint8_t value) const
Configures the signal type for a specific signal generator.
std::vector< std::uint32_t > getVectorSGFrefs() const
Returns a vector with the reference clocks for all the signal generators in the system.
void setSGPhase(const std::uint32_t n, const std::uint32_t value) const
Configures the phase for a specific signal generator.
std::uint8_t getSGSignalType(const std::uint32_t n) const
Returns the signal type generated for a specific signal generator.
void setSGFreqDecimation(const std::uint32_t n, const std::uint32_t value) const
Configures the decimation to apply to a specific signal generator.
TerminalsSignalGeneration(ParserManager *parserManager, const NiFpga_Session &session, const Platform &platform)
Manages finding the related signal generation terminals in the parsed bitfile and reading their value...
std::uint32_t getSGAmp(const std::uint32_t n) const
Returns the amplitude of the signal for a specific signal generator.
std::uint8_t getSGNo() const
Returns the number of signal generators in the FPGA implementation.
std::uint32_t getSGFref(const std::uint32_t n) const
Returns the reference clock for a specified signal generator.
std::uint32_t getSGUpdateRate(const std::uint32_t n) const
Returns the update rate of a specific signal generator.
std::uint32_t getSGFreq(const std::uint32_t n) const
Returns the frequency of the signal for a specific signal generator.
void setSGAmp(const std::uint32_t n, const std::uint32_t value) const
Configures the amplitude for a specific signal generator.