|
| virtual DeviceType | GetType () const |
| |
|
virtual int | SetImage (unsigned char *pixels)=0 |
| | Load the image into the SLM device adapter.
|
| |
|
virtual int | SetImage (unsigned int *pixels)=0 |
| | Load a 32-bit image into the SLM device adapter.
|
| |
|
virtual int | DisplayImage ()=0 |
| | Command the SLM to display the loaded image.
|
| |
|
virtual int | SetPixelsTo (unsigned char intensity)=0 |
| | Command the SLM to display one 8-bit intensity.
|
| |
|
virtual int | SetPixelsTo (unsigned char red, unsigned char green, unsigned char blue)=0 |
| | Command the SLM to display one 32-bit color.
|
| |
|
virtual int | SetExposure (double interval_ms)=0 |
| | Command the SLM to turn off after a specified interval.
|
| |
|
virtual double | GetExposure ()=0 |
| | Get the exposure interval of an SLM.
|
| |
|
virtual unsigned | GetWidth ()=0 |
| | Get the SLM width in pixels.
|
| |
|
virtual unsigned | GetHeight ()=0 |
| | Get the SLM height in pixels.
|
| |
|
virtual unsigned | GetNumberOfComponents ()=0 |
| | Get the SLM number of components (colors).
|
| |
|
virtual unsigned | GetBytesPerPixel ()=0 |
| | Get the SLM number of bytes per pixel.
|
| |
| virtual int | IsSLMSequenceable (bool &isSequenceable) const =0 |
| | Indicate whether or not this SLM device accepts sequences.
|
| |
| virtual int | GetSLMSequenceMaxLength (long &nrEvents) const =0 |
| | Return the maximum length of a sequence that the hardware can store.
|
| |
| virtual int | StartSLMSequence ()=0 |
| | Start running a sequence (i.e., start switching between images sent previously, triggered by a TTL or internal clock).
|
| |
| virtual int | StopSLMSequence ()=0 |
| | Stop running the sequence.
|
| |
| virtual int | ClearSLMSequence ()=0 |
| | Clear the SLM sequence from the device and the adapter.
|
| |
| virtual int | AddToSLMSequence (const unsigned char *const pixels)=0 |
| | Add a new 8-bit projection image to the sequence.
|
| |
| virtual int | AddToSLMSequence (const unsigned int *const pixels)=0 |
| | Add a new 32-bit (RGB) projection image to the sequence.
|
| |
| virtual int | SendSLMSequence ()=0 |
| | Send the complete sequence to the 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 |
| | Check whether the given property can be used with sequences.
|
| |
| virtual int | GetPropertySequenceMaxLength (const char *propertyName, long &nrEvents) const =0 |
| | Return the largest sequence that can be stored in the device.
|
| |
| virtual int | StartPropertySequence (const char *propertyName)=0 |
| | Start execution of the sequence.
|
| |
| virtual int | StopPropertySequence (const char *propertyName)=0 |
| | Stop execution of the sequence.
|
| |
| virtual int | ClearPropertySequence (const char *propertyName)=0 |
| | Remove previously added sequence.
|
| |
| virtual int | AddToPropertySequence (const char *propertyName, const char *value)=0 |
| | Add one value to the sequence.
|
| |
| virtual int | SendPropertySequence (const char *propertyName)=0 |
| | Signal that we are done sending sequence values so that the adapter can send the whole sequence to the device.
|
| |
| 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 |
| |
| 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 |
| | Shut down (unload) the device.
|
| |
|
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 |
| |
Spatial Light Modulator (SLM) API.
An SLM is a device that can display images. It is expected to represent a rectangular grid (i.e. it has width and height) of pixels that can be either 8 bit or 32 bit. Illumination (light source on or off) is logically independent of displaying the image. Likely the most widely used implementation is the GenericSLM.