|
ngscopeclient v0.2.1
|
A simulated power supply for demonstration. More...
#include <DemoPowerSupply.h>


Public Member Functions | |
| DemoPowerSupply (SCPITransport *transport) | |
| Initialize the driver. | |
| virtual uint32_t | GetInstrumentTypesForChannel (size_t i) const override |
| Returns a bitfield describing the set of instrument types that a given channel supports. | |
| bool | SupportsSoftStart () override |
| Determines if the power supply supports soft start. | |
| bool | SupportsIndividualOutputSwitching () override |
| Determines if the power supply supports switching individual output channels. | |
| bool | SupportsMasterOutputSwitching () override |
| Determines if the power supply supports ganged master switching of all outputs. | |
| bool | SupportsOvercurrentShutdown () override |
| Determines if the power supply supports shutdown rather than constant-current mode on overcurrent. | |
| double | GetPowerVoltageActual (int chan) override |
| double | GetPowerVoltageNominal (int chan) override |
| double | GetPowerCurrentActual (int chan) override |
| double | GetPowerCurrentNominal (int chan) override |
| bool | GetPowerChannelActive (int chan) override |
| bool | GetPowerOvercurrentShutdownEnabled (int chan) override |
| void | SetPowerOvercurrentShutdownEnabled (int chan, bool enable) override |
| bool | GetPowerOvercurrentShutdownTripped (int chan) override |
| void | SetPowerVoltage (int chan, double volts) override |
| void | SetPowerCurrent (int chan, double amps) override |
| void | SetPowerChannelActive (int chan, bool on) override |
| bool | IsPowerConstantCurrent (int chan) override |
| bool | GetMasterPowerEnable () override |
| void | SetMasterPowerEnable (bool enable) override |
Public Member Functions inherited from PowerSupply | |
| virtual unsigned int | GetInstrumentTypes () const override |
| Returns a bitfield describing the set of instrument types that this instrument supports. | |
| virtual bool | SupportsVoltageCurrentControl (int chan) |
| Determines if the power supply supports voltage/current control for the given channel. | |
| virtual bool | AcquireData () override |
| Pulls data from hardware and updates our measurements. | |
| virtual bool | IsSoftStartEnabled (int chan) |
| virtual void | SetSoftStartEnabled (int chan, bool enable) |
| virtual int64_t | GetSoftStartRampTime (int chan) |
| Gets the ramp time for use with soft-start mode. | |
| virtual void | SetSoftStartRampTime (int chan, int64_t time) |
| Sets the ramp time for use with soft-start mode. | |
Public Member Functions inherited from Instrument | |
| virtual bool | IsOffline () |
| Checks if the instrument is currently online. | |
| size_t | GetChannelCount () const |
| Gets the number of channels (of any type) this instrument has. | |
| InstrumentChannel * | GetChannel (size_t i) const |
| Gets a given channel on the instrument. | |
| virtual std::string | GetChannelDisplayName (size_t i) |
| Gets the hardware display name for a channel. This is an arbitrary user-selected string. | |
| virtual void | SetChannelDisplayName (size_t i, std::string name) |
| Sets the hardware display name for a channel. This is an arbitrary user-selected string. | |
| InstrumentChannel * | GetChannelByDisplayName (const std::string &name) |
| Gets a channel given the display name. | |
| InstrumentChannel * | GetChannelByHwName (const std::string &name) |
| Gets a channel given the hardware name. | |
| virtual void | FlushConfigCache () |
| Instruments are allowed to cache configuration settings to reduce round trip queries to the device. | |
| virtual YAML::Node | SerializeConfiguration (IDTable &table) const |
| Serializes this instrument's configuration to a YAML node. | |
| virtual void | LoadConfiguration (int version, const YAML::Node &node, IDTable &idmap) |
| Load instrument and channel configuration from a save file. | |
| 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. | |
Public Member Functions inherited from SCPIInstrument | |
| SCPIInstrument (SCPITransport *transport, bool identify=true) | |
| virtual std::string | GetTransportConnectionString () override |
| Gets the connection string for our transport. | |
| virtual std::string | GetTransportName () override |
| Gets the name of our transport. | |
| virtual std::string | GetName () const override |
| virtual std::string | GetVendor () const override |
| virtual std::string | GetSerial () const override |
| virtual std::string | GetDriverName () const =0 |
| virtual void | BackgroundProcessing () override |
| Run various background processing typically done by a second thread (e.g. InstrumentThread) | |
Public Member Functions inherited from SCPIDevice | |
| SCPIDevice (SCPITransport *transport, bool identify=true, unsigned int identify_timeout_us=5000000) | |
| SCPIDevice (const SCPIDevice &rhs)=delete | |
| SCPIDevice & | operator= (const SCPIDevice &rhs)=delete |
| SCPITransport * | GetTransport () const |
Static Public Member Functions | |
| static std::string | GetDriverNameInternal () |
| Return the constant driver name string "demopsu". | |
| static std::vector< SCPIInstrumentModel > | GetDriverSupportedModels () |
Static Public Member Functions inherited from SCPIPowerSupply | |
| static void | DoAddDriverClass (const std::string &name, PowerCreateProcType proc) |
| static void | EnumDrivers (std::vector< std::string > &names) |
| static std::shared_ptr< SCPIPowerSupply > | CreatePowerSupply (const std::string &driver, SCPITransport *transport) |
Static Public Member Functions inherited from SCPIInstrument | |
| static void | DoAddDriverClass (const std::string &name, GetTransportsProcType proc) |
| static std::vector< SCPIInstrumentModel > | GetSupportedModels (const std::string &driver) |
| static std::vector< SCPIInstrumentModel > | GetDriverSupportedModels () |
Protected Types | |
| enum | { OCP_OFF , OCP_ENABLED , OCP_TRIPPED } |
Protected Types inherited from SCPIPowerSupply | |
| typedef std::map< std::string, PowerCreateProcType > | PowerCreateMapType |
Protected Types inherited from SCPIInstrument | |
| typedef std::map< std::string, GetTransportsProcType > | GetTransportMapType |
Protected Attributes | |
| bool | m_masterEnabled |
| double | m_voltages [m_numChans] |
| double | m_currents [m_numChans] |
| bool | m_enabled [m_numChans] |
| enum DemoPowerSupply:: { ... } | m_ocpState [m_numChans] |
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 | |
| SCPITransport * | m_transport |
| std::string | m_vendor |
| std::string | m_model |
| std::string | m_serial |
| std::string | m_fwVersion |
Static Protected Attributes | |
| static constexpr int | m_numChans = 4 |
| static constexpr double | m_loads [m_numChans] = {10000000, 0.01, 1, 1000} |
| static constexpr const char * | m_names [m_numChans] = {"Open", "Short", "1Ohm", "1KOhm"} |
| static constexpr double | m_maxVoltage = 25 |
| static constexpr double | m_maxAmperage = 5 |
Static Protected Attributes inherited from SCPIPowerSupply | |
| static PowerCreateMapType | m_powercreateprocs |
Static Protected Attributes inherited from SCPIInstrument | |
| static GetTransportMapType | m_getTransportProcs |
Additional Inherited Members | |
Public Types inherited from SCPIPowerSupply | |
| typedef std::shared_ptr< SCPIPowerSupply >(* | PowerCreateProcType) (SCPITransport *) |
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 Types inherited from SCPIInstrument | |
| typedef std::vector< SCPIInstrumentModel >(* | GetTransportsProcType) () |
Public Attributes inherited from Instrument | |
| std::string | m_nickname |
| Optional user-selected nickname of the instrument. | |
Protected Member Functions inherited from PowerSupply | |
| void | DoSerializeConfiguration (YAML::Node &node, IDTable &table) |
| Serializes this oscilloscope'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) |
A simulated power supply for demonstration.
| DemoPowerSupply::DemoPowerSupply | ( | SCPITransport * | transport | ) |
Initialize the driver.
| transport | SCPINullTransport object (this driver does not connect to real hardware) |
Returns a bitfield describing the set of instrument types that a given channel supports.
| i | Channel index |
Implements Instrument.
|
overridevirtual |
Reimplemented from PowerSupply.
Reimplemented from PowerSupply.
Implements PowerSupply.
Implements PowerSupply.
Reimplemented from PowerSupply.
Reimplemented from PowerSupply.
Implements PowerSupply.
Implements PowerSupply.
Implements PowerSupply.
Reimplemented from PowerSupply.
Reimplemented from PowerSupply.
Implements PowerSupply.
Reimplemented from PowerSupply.
Implements PowerSupply.
|
overridevirtual |
Determines if the power supply supports switching individual output channels.
If this function returns false, GetPowerChannelActive() will always return true, and SetPowerChannelActive() is a no-op.
Reimplemented from PowerSupply.
|
overridevirtual |
Determines if the power supply supports ganged master switching of all outputs.
If this function returns false, GetMasterPowerEnable() will always return true, and SetMasterPowerEnable() is a no-op.
Reimplemented from PowerSupply.
|
overridevirtual |
Determines if the power supply supports shutdown rather than constant-current mode on overcurrent.
If this function returns false, GetPowerOvercurrentShutdownEnabled() and GetPowerOvercurrentShutdownTripped() will always return false, and SetPowerOvercurrentShutdownEnabled() is a no-op.
Reimplemented from PowerSupply.
|
overridevirtual |
Determines if the power supply supports soft start.
If this function returns false, IsSoftStartEnabled() will always return false, and SetSoftStartEnabled() is a no-op.
Reimplemented from PowerSupply.