thorlabs_up_series/thorlabs_up_led.h Source File

[[PREPROC_HEADER_GUARD_BEGIN]]
 
#include <HC_API.h>
#include <controllers_utils.h>
 
namespace ControlAPI {
 
    class HC_API ThorLabsUPLED_SetLighting : public DeviceCommandPackage {
    public:
        HC_CLASS_DEVICECOMMANDPACKAGE_META(ThorLabsUPLED_SetLighting)
 
        virtual ~ThorLabsUPLED_SetLighting() = default;
#ifdef HC_API_FEATURE_NETWORKING
        virtual void syncFromNetwork(CommandStatus* command) override;
#endif
        float intensityPercent = 0.0f;
    };
 
    class HC_API ThorLabsUPLED_DeviceInfo : public DeviceInfo {
    public:
        HC_CLASS_META(ThorLabsUPLED_DeviceInfo)
        HC_SWIG_SHAREDPTR(ThorLabsUPLED_DeviceInfo)
        friend class ThorLabsUPLED_Controller;
 
        virtual ~ThorLabsUPLED_DeviceInfo() = default;
 
    protected:
    };
 
    class HC_API ThorLabsUPLED_Controller : public HardwareDeviceController {
    public:
        HC_CLASS_META(ThorLabsUPLED_Controller)
        HC_SWIG_SHAREDPTR(ThorLabsUPLED_Controller)
 
        ThorLabsUPLED_Controller();
        virtual ~ThorLabsUPLED_Controller() = default;
 
 
        bool sendIntensityCommand(int apiDeviceId, float intensityPercent);
 
#ifdef HC_API_MACRO_EXCLUDE_DOCS
        bool init();
        virtual bool issueCommand(CommandStatus* command) override;
#endif
 
    private:
    };
}// namespace ControlAPI
 
[[PREPROC_HEADER_GUARD_END]]