MMDevice
70
|
#include <MMDevice.h>
Public Member Functions | |
virtual DeviceType | GetType () const |
virtual int | SetPositionUm (double pos)=0 |
virtual int | SetRelativePositionUm (double d)=0 |
virtual int | Move (double velocity)=0 |
virtual int | Stop ()=0 |
virtual int | Home ()=0 |
virtual int | SetAdapterOriginUm (double d)=0 |
virtual int | GetPositionUm (double &pos)=0 |
virtual int | SetPositionSteps (long steps)=0 |
virtual int | GetPositionSteps (long &steps)=0 |
virtual int | SetOrigin ()=0 |
virtual int | GetLimits (double &lower, double &upper)=0 |
virtual int | GetFocusDirection (FocusDirection &direction)=0 |
Return the focus direction. More... | |
virtual int | IsStageSequenceable (bool &isSequenceable) const =0 |
virtual int | IsStageLinearSequenceable (bool &isSequenceable) const =0 |
virtual bool | IsContinuousFocusDrive () const =0 |
virtual int | GetStageSequenceMaxLength (long &nrEvents) const =0 |
virtual int | StartStageSequence ()=0 |
virtual int | StopStageSequence ()=0 |
virtual int | ClearStageSequence ()=0 |
virtual int | AddToStageSequence (double position)=0 |
virtual int | SendStageSequence ()=0 |
virtual int | SetStageLinearSequence (double dZ_um, long nSlices)=0 |
Public Member Functions inherited from MM::Device | |
virtual unsigned | GetNumberOfProperties () const =0 |
virtual int | GetProperty (const char *name, char *value) const =0 |
virtual int | SetProperty (const char *name, const char *value)=0 |
virtual bool | HasProperty (const char *name) const =0 |
virtual bool | GetPropertyName (unsigned idx, char *name) const =0 |
virtual int | GetPropertyReadOnly (const char *name, bool &readOnly) const =0 |
virtual int | GetPropertyInitStatus (const char *name, bool &preInit) const =0 |
virtual int | HasPropertyLimits (const char *name, bool &hasLimits) const =0 |
virtual int | GetPropertyLowerLimit (const char *name, double &lowLimit) const =0 |
virtual int | GetPropertyUpperLimit (const char *name, double &hiLimit) const =0 |
virtual int | GetPropertyType (const char *name, MM::PropertyType &pt) const =0 |
virtual unsigned | GetNumberOfPropertyValues (const char *propertyName) const =0 |
virtual bool | GetPropertyValueAt (const char *propertyName, unsigned index, char *value) const =0 |
virtual int | IsPropertySequenceable (const char *name, bool &isSequenceable) const =0 |
virtual int | GetPropertySequenceMaxLength (const char *propertyName, long &nrEvents) const =0 |
virtual int | StartPropertySequence (const char *propertyName)=0 |
virtual int | StopPropertySequence (const char *propertyName)=0 |
virtual int | ClearPropertySequence (const char *propertyName)=0 |
virtual int | AddToPropertySequence (const char *propertyName, const char *value)=0 |
virtual int | SendPropertySequence (const char *propertyName)=0 |
virtual bool | GetErrorText (int errorCode, char *errMessage) const =0 |
virtual bool | Busy ()=0 |
virtual double | GetDelayMs () const =0 |
virtual void | SetDelayMs (double delay)=0 |
virtual bool | UsesDelay ()=0 |
MM_DEPRECATED (virtual HDEVMODULE GetModuleHandle() const)=0 | |
MM_DEPRECATED (virtual void SetModuleHandle(HDEVMODULE hLibraryHandle))=0 | |
virtual void | SetLabel (const char *label)=0 |
virtual void | GetLabel (char *name) const =0 |
virtual void | SetModuleName (const char *moduleName)=0 |
virtual void | GetModuleName (char *moduleName) const =0 |
virtual void | SetDescription (const char *description)=0 |
virtual void | GetDescription (char *description) const =0 |
virtual int | Initialize ()=0 |
virtual int | Shutdown ()=0 |
virtual void | GetName (char *name) const =0 |
virtual void | SetCallback (Core *callback)=0 |
virtual bool | SupportsDeviceDetection (void)=0 |
virtual MM::DeviceDetectionStatus | DetectDevice (void)=0 |
virtual void | SetParentID (const char *parentId)=0 |
virtual void | GetParentID (char *parentID) const =0 |
Static Public Attributes | |
static const DeviceType | Type = StageDevice |
Single axis stage API
|
pure virtual |
Add one value to the sequence
|
pure virtual |
Remove all values in the sequence
|
pure virtual |
Return the focus direction.
Indicates whether increasing position corresponds to movement in the direction that brings the objective and sample closer together.
Unless the direction is known for sure (does not depend on e.g. how the hardware is installed), this function must return FocusDirectionUnknown (the application can allow the user to specify the direction as needed).
Non-focus single-axis stages must also return FocusDirectionUnknown.
|
pure virtual |
Indicates whether the stage can perform linear TTL sequencing.
Linear sequencing uses a delta and count instead of an arbitrary list of positions.
If true, the following methods must be implemented: SetStageLinearSequence(), StartStageSequence(), StopStageSequence().
|
pure virtual |
Indicates whether a stage can be sequenced (synchronized by TTLs).
If true, the following methods must be implemented: GetStageSequenceMaxLength(), StartStageSequence(), StopStageSequence(), ClearStageSequence(), AddToStageSequence(), and SendStageSequence().
|
pure virtual |
Signal that we are done sending sequence values so that the adapter can send the whole sequence to the device
|
pure virtual |
Set up to perform an equally-spaced triggered Z stack.
After calling this function, StartStageSequence() must cause the stage to step by dZ_um on each trigger. On the Nth trigger, the stage must return to the position where it was when StartStageSequence() was called.