Relacs DAQ Library  0.9.8
Public Member Functions | List of all members
Manipulator Class Reference

#include <manipulator.h>

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

Public Member Functions

 Manipulator (void)
 
 Manipulator (const string &deviceclass)
 
virtual ~Manipulator (void)
 
virtual int stepX (double x)
 
virtual int stepY (double y)
 
virtual int stepZ (double z)
 
virtual int clearX (void)
 
virtual int clearY (void)
 
virtual int clearZ (void)
 
virtual int clear (void)
 
virtual int homeX (void)
 
virtual int homeY (void)
 
virtual int homeZ (void)
 
virtual int home (void)
 
virtual double posX (void) const
 
virtual double posY (void) const
 
virtual double posZ (void) const
 
virtual int setAmplX (double posampl, double negampl=-1.0)
 
virtual int setAmplY (double posampl, double negampl=-1.0)
 
virtual int setAmplZ (double posampl, double negampl=-1.0)
 
virtual double minAmplX (void) const
 
virtual double maxAmplX (void) const
 
virtual double minAmplY (void) const
 
virtual double maxAmplY (void) const
 
virtual double minAmplZ (void) const
 
virtual double maxAmplZ (void) const
 
- Public Member Functions inherited from Device
 Device (int type=MiscellaneousType)
 
 Device (const string &deviceclass, int type=MiscellaneousType)
 
virtual ~Device (void)
 
virtual int open (const string &device)
 
virtual int open (Device &device)
 
virtual bool isOpen (void) const =0
 
virtual void close (void)=0
 
virtual int reset (void)
 
virtual const Options & info (void) const
 
virtual const Options & settings (void) const
 
int deviceType (void) const
 
string deviceTypeStr (void) const
 
string deviceClass (void) const
 
string deviceFile (void) const
 
string deviceName (void) const
 
string deviceVendor (void) const
 
string deviceIdent (void) const
 
virtual void setDeviceIdent (const string &ident)
 
virtual void clearError (void)
 
virtual string errorStr (void) const
 
void setErrorStr (const string &strg)
 
void addErrorStr (const string &strg)
 
void setErrorStr (int errnum)
 
void addErrorStr (int errnum)
 
virtual bool success (void) const
 
virtual bool failed (void) const
 

Additional Inherited Members

- Public Types inherited from Device
enum  DeviceTypes {
  MiscellaneousType = 0, AnalogInputType = 1, AnalogOutputType = 2, DigitalIOType = 3,
  TriggerType = 4, AttenuatorType = 5, AttenuateType = 6, ManipulatorType = 7,
  TemperatureType = 8, CameraType = 9
}
 
- Static Public Member Functions inherited from Device
static int deviceTypes (void)
 
static string deviceTypeStr (int type)
 
static string getErrorStr (int ern)
 
- Static Public Attributes inherited from Device
static const int NotOpen = -1
 
static const int InvalidDevice = -2
 
static const int ReadError = -3
 
static const int WriteError = -4
 
static const int InvalidParam = -5
 
- Protected Member Functions inherited from Device
void setDeviceType (int type)
 
void setDeviceClass (const string &deviceclass)
 
void setDeviceFile (const string &devicefile)
 
void setDeviceName (const string &devicename)
 
void setDeviceVendor (const string &devicevendor)
 
void addInfo (void)
 
void lock (void) const
 
void unlock (void) const
 
QMutex * mutex (void) const
 
virtual void initOptions (void)
 
- Protected Attributes inherited from Device
Options Info
 
Options Settings
 

Detailed Description

Virtual class for controlling a Manipulator.

Author
Jan Benda
Version
1.0
Todo:

implement info() and settings()

add something for indicating existing axis

The Manipulator class defines an interface for basic operations to control a manipulator.

In case you want to use a manipulator device within RELACS, your Attenuate implementation needs to provide a void default constructor (i.e. with no parameters) that does not open the device. Also, include the header file <relacs/relacsplugin.h> and make the Manipulator device known to RELACS with the addDevice( ClassNameOfYourManipulatorImplementation, PluginSetName ) macro.

Constructor & Destructor Documentation

Manipulator ( void  )

Construct a Manipulator.

Manipulator ( const string &  deviceclass)

Construct a Manipulator with class deviceclass.

See Also
setDeviceClass()
~Manipulator ( void  )
virtual

Destroy a Manipulator. In case it is open, close it.

Member Function Documentation

int stepX ( double  x)
virtual

Move x-axis by x. Depending on the implementation x can be raw steps or a specific distance or angle.

int stepY ( double  y)
virtual

Move y-axis by y. Depending on the implementation y can be raw steps or a specific distance or angle.

int stepZ ( double  z)
virtual

Move z-axis by z. Depending on the implementation z can be raw steps or a specific distance or angle.

int clearX ( void  )
virtual

Defines the current position of the x axis as the home position.

Referenced by Manipulator::clear().

int clearY ( void  )
virtual

Defines the current position of the y axis as the home position.

Referenced by Manipulator::clear().

int clearZ ( void  )
virtual

Defines the current position of the z axis as the home position.

Referenced by Manipulator::clear().

int clear ( void  )
virtual

Defines the current position of all axis as the home position.

References Manipulator::clearX(), Manipulator::clearY(), and Manipulator::clearZ().

int homeX ( void  )
virtual

Move x axis back to its home position.

Referenced by Manipulator::home().

int homeY ( void  )
virtual

Move y axis back to its home position.

Referenced by Manipulator::home().

int homeZ ( void  )
virtual

Move z axis back to its home position.

Referenced by Manipulator::home().

int home ( void  )
virtual

Move back to the home position.

References Manipulator::homeX(), Manipulator::homeY(), and Manipulator::homeZ().

double posX ( void  ) const
virtual

Return the position of the x-axis. Depending on the implementation this can be raw steps or a specific distance or angle.

double posY ( void  ) const
virtual

Return the position of the y-axis. Depending on the implementation this can be raw steps or a specific distance or angle.

double posZ ( void  ) const
virtual

Return the position of the z-axis. Depending on the implementation this can be raw steps or a specific distance or angle.

int setAmplX ( double  posampl,
double  negampl = -1.0 
)
virtual

Set the amplitude of a step of the x-axis to posampl. If negampl >= 0.0 set the negative amplitude to negampl, otherwise set it equal to posampl.

int setAmplY ( double  posampl,
double  negampl = -1.0 
)
virtual

Set the amplitude of a step of the y-axis to posampl. If negampl >= 0.0 set the negative amplitude to negampl, otherwise set it equal to posampl.

int setAmplZ ( double  posampl,
double  negampl = -1.0 
)
virtual

Set the amplitude of a step of the z-axis to posampl. If negampl >= 0.0 set the negative amplitude to negampl, otherwise set it equal to posampl.

double minAmplX ( void  ) const
virtual

The minimum possible amplitude for the x-axis.

Referenced by Manipulator::minAmplY(), and Manipulator::minAmplZ().

double maxAmplX ( void  ) const
virtual

The maximum possible amplitude for the x-axis.

Referenced by Manipulator::maxAmplY(), and Manipulator::maxAmplZ().

double minAmplY ( void  ) const
virtual

The minimum possible amplitude for the y-axis.

References Manipulator::minAmplX().

double maxAmplY ( void  ) const
virtual

The maximum possible amplitude for the y-axis.

References Manipulator::maxAmplX().

double minAmplZ ( void  ) const
virtual

The minimum possible amplitude for the z-axis.

References Manipulator::minAmplX().

double maxAmplZ ( void  ) const
virtual

The maximum possible amplitude for the z-axis.

References Manipulator::maxAmplX().


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