Code owners
Assign users and groups as approvers for specific file changes. Learn more.
ElectrometerProtocol.cpp 30.74 KiB
// ============================================================================
//
// = CONTEXT
// TANGO Project - ElectrometerProtocol Support Library
//
// = FILENAME
// ElectrometerProtocol.cpp
//
// = AUTHOR
// X. Elattaoui
//
// ============================================================================
// ============================================================================
// DEPENDENCIES
// ============================================================================
#include <iostream>
#include "ElectrometerProtocol.h"
#include "TangoGpibLink.h"
#include "ElectrometerException.h"
// ============================================================================
// ElectrometerProtocol::ElectrometerProtocol
// ============================================================================
ElectrometerProtocol::ElectrometerProtocol () :
_range(0),
_mode("NOT INITIALISED"),
_communication_link(0)
{
//std::cout << "ElectrometerProtocol::ElectrometerProtocol <-" << std::endl;
//std::cout << "ElectrometerProtocol::ElectrometerProtocol ->" << std::endl;
}
// ============================================================================
// ElectrometerProtocol::~ElectrometerProtocol
// ============================================================================
ElectrometerProtocol::~ElectrometerProtocol (void)
{
//std::cout << "ElectrometerProtocol::~ElectrometerProtocol <-" << std::endl;
if(_communication_link)
{
delete _communication_link;
_communication_link = 0;
}
//std::cout << "ElectrometerProtocol::~ElectrometerProtocol ->" << std::endl;
}
// ============================================================================
// ElectrometerProtocol::local
// ============================================================================
void ElectrometerProtocol::local (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This command is not implemented, if you want it post a bug in MANTIS.",
"ElectrometerProtocol::local( ).");
}
// ============================================================================
// ElectrometerProtocol::remote
// ============================================================================
void ElectrometerProtocol::remote (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This command is not implemented, if you want it post a bug in MANTIS.",
"ElectrometerProtocol::remote( ).");
}
// ============================================================================
// ElectrometerProtocol::get_integratedValue
// ============================================================================
std::vector<double> ElectrometerProtocol::get_integratedValue (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_integratedValue( ).");
}
// ============================================================================
// ElectrometerProtocol::get_fetchValue
// ============================================================================
std::vector<double> ElectrometerProtocol::get_fetchValue (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_fetchValue( ).");
}
// ============================================================================
// ElectrometerProtocol::get_frequency
// ============================================================================
std::string ElectrometerProtocol::get_frequency (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_frequency( ).");
}
// ============================================================================
// ElectrometerProtocol::get_gain
// ============================================================================
std::string ElectrometerProtocol::get_gain (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_gain( ).");
}
// ============================================================================
// ElectrometerProtocol::get_polarity
// ============================================================================
std::string ElectrometerProtocol::get_polarity (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_polarity( ).");
}
// ============================================================================
// ElectrometerProtocol::set_polarity
// ============================================================================
void ElectrometerProtocol::set_polarity (std::string )
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_polarity( ).");
}
// ============================================================================
// ElectrometerProtocol::set_frequency
// ============================================================================
void ElectrometerProtocol::set_frequency (std::string )
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_frequency( ).");
}
// ============================================================================
// ElectrometerProtocol::set_gain
// ============================================================================
void ElectrometerProtocol::set_gain (std::string )
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_gain( ).");
}
// ============================================================================
// ElectrometerProtocol::unable_zeroVF_func
// ============================================================================
void ElectrometerProtocol::unable_zeroVF_func (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::unable_zeroVF_func( ).");
}
// ============================================================================
// ElectrometerProtocol::unable_offset_zeroV1_func
// ============================================================================
void ElectrometerProtocol::unable_offset_zeroV1_func (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::unable_offset_zeroV1_func( ).");
}
// ============================================================================
// ElectrometerProtocol::unable_leakage_zeroV2_func
// ============================================================================
void ElectrometerProtocol::unable_leakage_zeroV2_func (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::unable_leakage_zeroV2_func( ).");
}
// ============================================================================
// ElectrometerProtocol::unable_test_func
// ============================================================================
void ElectrometerProtocol::unable_test_func (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::unable_test_func( ).");
}
// ============================================================================
// ElectrometerProtocol::unable_measure_func
// ============================================================================
void ElectrometerProtocol::unable_measure_func (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::unable_measure_func( ).");
}
// ============================================================================
// ElectrometerProtocol::switch_MCCE2_ON
// ============================================================================
void ElectrometerProtocol::switch_MCCE2_ON (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::switch_MCCE2_ON( ).");
}
// ============================================================================
// ElectrometerProtocol::switch_MCCE2_OFF
// ============================================================================
void ElectrometerProtocol::switch_MCCE2_OFF (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::switch_MCCE2_OFF( ).");
}
// ============================================================================
// ElectrometerProtocol::init_MCCE2_for_communication
// ============================================================================
void ElectrometerProtocol::init_MCCE2_for_communication (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::init_MCCE2_for_communication( ).");
}
// ============================================================================
// ElectrometerProtocol::autoRange_ON
// ============================================================================
void ElectrometerProtocol::autoRange_on (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::autoRange_on( ).");
}
// ============================================================================
// ElectrometerProtocol::autoRange_OFF
// ============================================================================
void ElectrometerProtocol::autoRange_off (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::autoRange_off( ).");
}
// ============================================================================
// ElectrometerProtocol::zero_check_on
// ============================================================================
void ElectrometerProtocol::zero_check_on (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This will be done soon !!!.",
"ElectrometerProtocol::zero_check_on( ).");
}
// ============================================================================
// ElectrometerProtocol::zero_check_off
// ============================================================================
void ElectrometerProtocol::zero_check_off (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This will be done soon !!!.",
"ElectrometerProtocol::zero_check_off( ).");
}
// ============================================================================
// ElectrometerProtocol::zero_correct_on
// ============================================================================
void ElectrometerProtocol::zero_correct_on (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This will be done soon !!!.",
"ElectrometerProtocol::zero_correct_on( ).");
}
// ============================================================================
// ElectrometerProtocol::zero_correct_off
// ============================================================================
void ElectrometerProtocol::zero_correct_off (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_IMPLEMENTED",
"This will be done soon !!!.",
"ElectrometerProtocol::zero_correct_off( ).");
}
// ============================================================================
// ElectrometerProtocol::auto_zero_on
// ============================================================================
void ElectrometerProtocol::auto_zero_on (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::auto_zero_on( ).");
}
// ============================================================================
// ElectrometerProtocol::auto_zero_off
// ============================================================================
void ElectrometerProtocol::auto_zero_off (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::auto_zero_off( ).");
}
// ============================================================================
// ElectrometerProtocol::setAmperMeterMode
// ============================================================================
void ElectrometerProtocol::setAmperMeterMode (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::setAmperMeterMode( ).");
}
// ============================================================================
// ElectrometerProtocol::setVoltMeterMode
// ============================================================================
void ElectrometerProtocol::setVoltMeterMode (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::setVoltMeterMode( ).");
}
// ============================================================================
// ElectrometerProtocol::setOhmMeterMode
// ============================================================================
void ElectrometerProtocol::setOhmMeterMode (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::setOhmMeterMode( ).");
}
// ============================================================================
// ElectrometerProtocol::setCoulombMeterMode
// ============================================================================
void ElectrometerProtocol::setCoulombMeterMode (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"Novelec does not support this command.",
"ElectrometerProtocol::setCoulombMeterMode( ).");
}
// ============================================================================
// ElectrometerProtocol::init_keithley
// ============================================================================
void ElectrometerProtocol::init_keithley (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::init_keithley( ).");
}
// ============================================================================
// ElectrometerProtocol::abort
// ============================================================================
void ElectrometerProtocol::abort (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::abort( ).");
}
// ============================================================================
// ElectrometerProtocol::set_knplc
// ============================================================================
void ElectrometerProtocol::set_knplc (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_knplc( ).");
}
// ============================================================================
// ElectrometerProtocol::get_knplc
// ============================================================================
std::string ElectrometerProtocol::get_knplc (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_knplc( ).");
}
// ============================================================================
// ElectrometerProtocol::set_triggerMode
// ============================================================================
void ElectrometerProtocol::set_triggerMode (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_triggerMode( ).");
}
// ============================================================================
// ElectrometerProtocol::set_triggercount
// ============================================================================
void ElectrometerProtocol::set_triggercount (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_triggercount( ).");
}
// ============================================================================
// ElectrometerProtocol::get_triggercount
// ============================================================================
std::string ElectrometerProtocol::get_triggercount (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_triggercount( ).");
}
// ============================================================================
// ElectrometerProtocol::set_triggerdelay
// ============================================================================
void ElectrometerProtocol::set_triggerdelay (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_triggerdelay( ).");
}
// ============================================================================
// ElectrometerProtocol::get_triggerdelay
// ============================================================================
std::string ElectrometerProtocol::get_triggerdelay (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_triggerdelay( ).");
}
// ============================================================================
// ElectrometerProtocol::set_triggerdelayAuto
// ============================================================================
void ElectrometerProtocol::set_triggerdelayAuto (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_triggerdelayAuto( ).");
}
// ============================================================================
// ElectrometerProtocol::get_triggerdelayAuto
// ============================================================================
std::string ElectrometerProtocol::get_triggerdelayAuto (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_triggerdelayAuto( ).");
}
// ============================================================================
// ElectrometerProtocol::set_averagecount
// ============================================================================
void ElectrometerProtocol::set_averagecount (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_averagecount( ).");
}
// ============================================================================
// ElectrometerProtocol::get_averagecount
// ============================================================================
std::string ElectrometerProtocol::get_averagecount (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_averagecount( ).");
}
// ============================================================================
// ElectrometerProtocol::set_averagecontrol
// ============================================================================
void ElectrometerProtocol::set_averagecontrol (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_averagecontrol( ).");
}
// ============================================================================
// ElectrometerProtocol::get_averagecontrol
// ============================================================================
std::string ElectrometerProtocol::get_averagecontrol (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_averagecontrol( ).");
}
// ============================================================================
// ElectrometerProtocol::clear_registers
// ============================================================================
void ElectrometerProtocol::clear_registers (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::clear_registers( ).");
}
// ============================================================================
// ElectrometerProtocol::averageStateON
// ============================================================================
void ElectrometerProtocol::averageStateON (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::averageStateON( ).");
}
// ============================================================================
// ElectrometerProtocol::averageStateOFF
// ============================================================================
void ElectrometerProtocol::averageStateOFF (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::averageStateOFF( ).");
}
// ============================================================================
// ElectrometerProtocol::set_buffer_size
// ============================================================================
void ElectrometerProtocol::set_buffer_size (std::string)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_buffer_size( ).");
}
// ============================================================================
// ElectrometerProtocol::get_buffer_size
// ============================================================================
std::string ElectrometerProtocol::get_buffer_size ()
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_buffer_size( ).");
}
// ============================================================================
// ElectrometerProtocol::clear_buffer
// ============================================================================
void ElectrometerProtocol::clear_buffer (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::clear_buffer( ).");
}
// ============================================================================
// ElectrometerProtocol::store_raw_input
// ============================================================================
void ElectrometerProtocol::store_raw_input (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::store_raw_input( ).");
}
// ============================================================================
// ElectrometerProtocol::start_storing
// ============================================================================
void ElectrometerProtocol::start_storing (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::start_storing( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_SRQBufferFull
// ============================================================================
void ElectrometerProtocol::enable_SRQBufferFull (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_SRQBufferFull( ).");
}
// ============================================================================
// ElectrometerProtocol::disable_SRQBufferFull
// ============================================================================
void ElectrometerProtocol::disable_SRQBufferFull (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::disable_SRQBufferFull( ).");
}
// ============================================================================
// ElectrometerProtocol::SRQLineState
// ============================================================================
bool ElectrometerProtocol::SRQLineState (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::SRQLineState( ).");
}
// ============================================================================
// ElectrometerProtocol::readStatusByteRegister
// ============================================================================
short ElectrometerProtocol::readStatusByteRegister (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::readStatusByteRegister( ).");
}
// ============================================================================
// ElectrometerProtocol::get_overloadRangeState (DDC Devices !!!)
// ============================================================================
bool ElectrometerProtocol::get_overloadRangeState (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::get_overloadRangeState( ).");
}
// ============================================================================
// ElectrometerProtocol::set_conversionRate
// ============================================================================
void ElectrometerProtocol::set_conversionRate (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::set_conversionRate( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_readingWithPrefix
// ============================================================================
void ElectrometerProtocol::enable_readingWithPrefix (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_readingWithPrefix( ).");
}
// ============================================================================
// ElectrometerProtocol::disable_readingWithPrefix
// ============================================================================
void ElectrometerProtocol::disable_readingWithPrefix (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::disable_readingWithPrefix( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_ReadingsFromElectrometer
// ============================================================================
void ElectrometerProtocol::enable_ReadingsFromElectrometer (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_ReadingsFromElectrometer( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_readingsFromBuffer_K617_6512
// ============================================================================
void ElectrometerProtocol::enable_readingsFromBuffer_K617_6512 (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_readingsFromBuffer_K617_6512( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_readingsFromBuffer_K486_487
// ============================================================================
void ElectrometerProtocol::enable_readingsFromBuffer_K486_487 (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_readingsFromBuffer_K486_487( ).");
}
// ============================================================================
// ElectrometerProtocol::enable_integrationPeriod
// ============================================================================
void ElectrometerProtocol::enable_integrationPeriod (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::enable_integrationPeriod( ).");
}
// ============================================================================
// ElectrometerProtocol::read_data_with_no_timestamp
// ============================================================================
void ElectrometerProtocol::read_data_with_no_timestamp (void)
{
throw electrometer::ElectrometerException("COMMAND_NOT_SUPPORTED",
"This Electrometer does not support this command.",
"ElectrometerProtocol::read_data_with_no_timestamp( ).");
}