ngscopeclient 0.1-dev+51fbda87c
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
RohdeSchwarzHMC8012Multimeter Class Reference

A Rohde & Schwarz HMC8012 multimeter. More...

#include <RohdeSchwarzHMC8012Multimeter.h>

Inheritance diagram for RohdeSchwarzHMC8012Multimeter:
Inheritance graph
[legend]
Collaboration diagram for RohdeSchwarzHMC8012Multimeter:
Collaboration graph
[legend]

Public Member Functions

 RohdeSchwarzHMC8012Multimeter (SCPITransport *transport)
 
virtual unsigned int GetInstrumentTypes () const override
 Returns a bitfield describing the set of instrument types that this instrument supports. More...
 
virtual uint32_t GetInstrumentTypesForChannel (size_t i) const override
 Returns a bitfield describing the set of instrument types that a given channel supports. More...
 
virtual unsigned int GetMeasurementTypes () override
 
virtual unsigned int GetSecondaryMeasurementTypes () override
 Gets a bitmask of secondary measurement types currently available. More...
 
virtual int GetCurrentMeterChannel () override
 
virtual void SetCurrentMeterChannel (int chan) override
 
virtual MeasurementTypes GetMeterMode () override
 
virtual MeasurementTypes GetSecondaryMeterMode () override
 Gets the active secondary mode. More...
 
virtual void SetMeterMode (MeasurementTypes type) override
 
virtual void SetSecondaryMeterMode (MeasurementTypes type) override
 Sets the active secondary mode. More...
 
virtual void SetMeterAutoRange (bool enable) override
 
virtual bool GetMeterAutoRange () override
 
virtual void StartMeter () override
 
virtual void StopMeter () override
 
virtual int GetMeterDigits () override
 Returns the digit resolution of the meter. More...
 
virtual double GetMeterValue () override
 Get the value of the primary measurement. More...
 
virtual double GetSecondaryMeterValue () override
 Get the value of the secondary measurement. More...
 
- Public Member Functions inherited from Multimeter
virtual unsigned int GetMeasurementTypes ()=0
 
virtual unsigned int GetSecondaryMeasurementTypes ()
 Gets a bitmask of secondary measurement types currently available. More...
 
virtual int GetCurrentMeterChannel ()=0
 
virtual void SetCurrentMeterChannel (int chan)=0
 
virtual MeasurementTypes GetMeterMode ()=0
 
virtual MeasurementTypes GetSecondaryMeterMode ()
 Gets the active secondary mode. More...
 
virtual std::string ModeToText (MeasurementTypes type)
 Converts a meter mode to human readable text.
 
MeasurementTypes TextToMode (const std::string &mode)
 Converts a textual meter mode to a mode ID.
 
virtual void SetMeterMode (MeasurementTypes type)=0
 
virtual void SetSecondaryMeterMode (MeasurementTypes type)
 Sets the active secondary mode. More...
 
virtual void SetMeterAutoRange (bool enable)=0
 
virtual bool GetMeterAutoRange ()=0
 
virtual void StartMeter ()=0
 
virtual void StopMeter ()=0
 
virtual Unit GetMeterUnit ()
 Get the current primary measurement unit.
 
virtual Unit GetSecondaryMeterUnit ()
 Get the current secondary measurement unit.
 
virtual double GetMeterValue ()=0
 Get the value of the primary measurement. More...
 
virtual double GetSecondaryMeterValue ()
 Get the value of the secondary measurement. More...
 
virtual int GetMeterDigits ()=0
 Returns the digit resolution of the meter. More...
 
virtual bool AcquireData () override
 Pull meter readings from hardware. More...
 
- Public Member Functions inherited from Instrument
virtual unsigned int GetInstrumentTypes () const =0
 Returns a bitfield describing the set of instrument types that this instrument supports. More...
 
virtual std::string GetName () const =0
 
virtual std::string GetVendor () const =0
 
virtual std::string GetSerial () const =0
 
virtual std::string GetTransportConnectionString ()=0
 Gets the connection string for our transport. More...
 
virtual std::string GetTransportName ()=0
 Gets the name of our transport. More...
 
virtual uint32_t GetInstrumentTypesForChannel (size_t i) const =0
 Returns a bitfield describing the set of instrument types that a given channel supports. More...
 
size_t GetChannelCount () const
 Gets the number of channels (of any type) this instrument has.
 
InstrumentChannelGetChannel (size_t i) const
 Gets a given channel on the instrument. More...
 
virtual std::string GetChannelDisplayName (size_t i)
 Gets the hardware display name for a channel. This is an arbitrary user-selected string. More...
 
virtual void SetChannelDisplayName (size_t i, std::string name)
 Sets the hardware display name for a channel. This is an arbitrary user-selected string. More...
 
InstrumentChannelGetChannelByDisplayName (const std::string &name)
 Gets a channel given the display name.
 
InstrumentChannelGetChannelByHwName (const std::string &name)
 Gets a channel given the hardware name.
 
virtual bool AcquireData ()=0
 Pull data from the instrument. More...
 
virtual YAML::Node SerializeConfiguration (IDTable &table) const
 Serializes this instrument's configuration to a YAML node. More...
 
virtual void LoadConfiguration (int version, const YAML::Node &node, IDTable &idmap)
 Load instrument and channel configuration from a save file. More...
 
virtual void PreLoadConfiguration (int version, const YAML::Node &node, IDTable &idmap, ConfigWarningList &warnings)
 Parse a limited subset of instrument configuration but do not apply it. More...
 
- Public Member Functions inherited from SCPIInstrument
 SCPIInstrument (SCPITransport *transport, bool identify=true)
 
virtual std::string GetTransportConnectionString ()
 Gets the connection string for our transport. More...
 
virtual std::string GetTransportName ()
 Gets the name of our transport. More...
 
virtual std::string GetName () const
 
virtual std::string GetVendor () const
 
virtual std::string GetSerial () const
 
virtual std::string GetDriverName () const =0
 
- Public Member Functions inherited from SCPIDevice
 SCPIDevice (SCPITransport *transport, bool identify=true)
 
SCPITransportGetTransport () const
 

Static Public Member Functions

static std::string GetDriverNameInternal ()
 
- Static Public Member Functions inherited from SCPIMultimeter
static void DoAddDriverClass (std::string name, MeterCreateProcType proc)
 
static void EnumDrivers (std::vector< std::string > &names)
 
static std::shared_ptr< SCPIMultimeterCreateMultimeter (std::string driver, SCPITransport *transport)
 

Protected Attributes

bool m_modeValid
 
bool m_secmodeValid
 
MeasurementTypes m_mode
 
MeasurementTypes m_secmode
 
- Protected Attributes inherited from Instrument
std::list< sigc::slot< void(YAML::Node &, IDTable &)> > m_serializers
 List of methods which need to be called to serialize this node's configuration.
 
std::list< sigc::slot< void(int, const YAML::Node &, IDTable &)> > m_loaders
 List of methods which need to be called to deserialize this node's configuration.
 
std::list< sigc::slot< void(int, const YAML::Node &, IDTable &, ConfigWarningList &)> > m_preloaders
 List of methods which need to be called to pre-load this node's configuration.
 
std::vector< InstrumentChannel * > m_channels
 Set of all channels on this instrument.
 
- Protected Attributes inherited from SCPIDevice
SCPITransportm_transport
 
std::string m_vendor
 
std::string m_model
 
std::string m_serial
 
std::string m_fwVersion
 

Additional Inherited Members

- Public Types inherited from SCPIMultimeter
typedef std::shared_ptr< SCPIMultimeter >(* MeterCreateProcType) (SCPITransport *)
 
- Public Types inherited from Multimeter
enum  MeasurementTypes {
  NONE = 0x000 , DC_VOLTAGE = 0x001 , DC_RMS_AMPLITUDE = 0x002 , AC_RMS_AMPLITUDE = 0x004 ,
  FREQUENCY = 0x008 , DC_CURRENT = 0x010 , AC_CURRENT = 0x020 , TEMPERATURE = 0x040 ,
  RESISTANCE = 0x080 , CAPACITANCE = 0x100 , CONTINUITY = 0x200 , DIODE = 0x400
}
 
- Public Types inherited from Instrument
enum  InstrumentTypes {
  INST_OSCILLOSCOPE = 0x01 , INST_DMM = 0x02 , INST_PSU = 0x04 , INST_FUNCTION = 0x08 ,
  INST_RF_GEN = 0x10 , INST_LOAD = 0x20 , INST_BERT = 0x40 , INST_MISC = 0x80 ,
  INST_SWITCH_MATRIX = 0x100
}
 
- Public Attributes inherited from Instrument
std::string m_nickname
 Optional user-selected nickname of the instrument. More...
 
- Protected Types inherited from SCPIMultimeter
typedef std::map< std::string, MeterCreateProcType > MeterCreateMapType
 
- Protected Member Functions inherited from Multimeter
void DoSerializeConfiguration (YAML::Node &node, IDTable &table)
 Serializes this multimeter's configuration to a YAML node.
 
void DoLoadConfiguration (int version, const YAML::Node &node, IDTable &idmap)
 Load instrument and channel configuration from a save file.
 
void DoPreLoadConfiguration (int version, const YAML::Node &node, IDTable &idmap, ConfigWarningList &list)
 Validate instrument and channel configuration from a save file.
 
- Protected Member Functions inherited from SCPIInstrument
void DoSerializeConfiguration (YAML::Node &node, IDTable &table)
 
- Static Protected Attributes inherited from SCPIMultimeter
static MeterCreateMapType m_metercreateprocs
 

Detailed Description

A Rohde & Schwarz HMC8012 multimeter.

Member Function Documentation

◆ GetCurrentMeterChannel()

int RohdeSchwarzHMC8012Multimeter::GetCurrentMeterChannel ( )
overridevirtual

Implements Multimeter.

◆ GetInstrumentTypes()

unsigned int RohdeSchwarzHMC8012Multimeter::GetInstrumentTypes ( ) const
overridevirtual

Returns a bitfield describing the set of instrument types that this instrument supports.

Not all types may be available on a given channel.

Implements Instrument.

◆ GetInstrumentTypesForChannel()

uint32_t RohdeSchwarzHMC8012Multimeter::GetInstrumentTypesForChannel ( size_t  i) const
overridevirtual

Returns a bitfield describing the set of instrument types that a given channel supports.

Parameters
iChannel index

Implements Instrument.

◆ GetMeasurementTypes()

unsigned int RohdeSchwarzHMC8012Multimeter::GetMeasurementTypes ( )
overridevirtual

Implements Multimeter.

◆ GetMeterAutoRange()

bool RohdeSchwarzHMC8012Multimeter::GetMeterAutoRange ( )
overridevirtual

Implements Multimeter.

◆ GetMeterDigits()

int RohdeSchwarzHMC8012Multimeter::GetMeterDigits ( )
overridevirtual

Returns the digit resolution of the meter.

Values are rounded up for display, for example a 5 3/4 digit meter should return 6 here.

Implements Multimeter.

◆ GetMeterMode()

Multimeter::MeasurementTypes RohdeSchwarzHMC8012Multimeter::GetMeterMode ( )
overridevirtual

Implements Multimeter.

◆ GetMeterValue()

double RohdeSchwarzHMC8012Multimeter::GetMeterValue ( )
overridevirtual

Get the value of the primary measurement.

Implements Multimeter.

◆ GetSecondaryMeasurementTypes()

unsigned int RohdeSchwarzHMC8012Multimeter::GetSecondaryMeasurementTypes ( )
overridevirtual

Gets a bitmask of secondary measurement types currently available.

The return value may change depending on the current primary measurement type.

Reimplemented from Multimeter.

◆ GetSecondaryMeterMode()

Multimeter::MeasurementTypes RohdeSchwarzHMC8012Multimeter::GetSecondaryMeterMode ( )
overridevirtual

Gets the active secondary mode.

Reimplemented from Multimeter.

◆ GetSecondaryMeterValue()

double RohdeSchwarzHMC8012Multimeter::GetSecondaryMeterValue ( )
overridevirtual

Get the value of the secondary measurement.

Reimplemented from Multimeter.

◆ SetCurrentMeterChannel()

void RohdeSchwarzHMC8012Multimeter::SetCurrentMeterChannel ( int  chan)
overridevirtual

Implements Multimeter.

◆ SetMeterAutoRange()

void RohdeSchwarzHMC8012Multimeter::SetMeterAutoRange ( bool  enable)
overridevirtual

Implements Multimeter.

◆ SetMeterMode()

void RohdeSchwarzHMC8012Multimeter::SetMeterMode ( Multimeter::MeasurementTypes  type)
overridevirtual

Implements Multimeter.

◆ SetSecondaryMeterMode()

void RohdeSchwarzHMC8012Multimeter::SetSecondaryMeterMode ( Multimeter::MeasurementTypes  type)
overridevirtual

Sets the active secondary mode.

Reimplemented from Multimeter.

◆ StartMeter()

void RohdeSchwarzHMC8012Multimeter::StartMeter ( )
overridevirtual

Implements Multimeter.

◆ StopMeter()

void RohdeSchwarzHMC8012Multimeter::StopMeter ( )
overridevirtual

Implements Multimeter.


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