OrcaSlicer/src/slic3r/GUI/DeviceCore/DevLamp.h
Bastien Nocera da57bed077 FIX: Fix missing std::string declaration
src/slic3r/GUI/DeviceCore/DevLamp.h:22:41: error: ‘string’ in namespace ‘std’ does not name a type
   22 |         void SetChamberLight(const std::string& status);
      |                                         ^~~~~~

(cherry picked from commit abd986164785070dcd39204781a0e5a9d40ce216)
2025-10-02 18:35:56 +08:00

44 lines
No EOL
1.3 KiB
C++

#pragma once
#include <string>
namespace Slic3r
{
class MachineObject;
class DevLamp
{
public:
DevLamp(MachineObject* obj) : m_owner(obj) {};
public:
enum LIGHT_EFFECT
{
LIGHT_EFFECT_ON,
LIGHT_EFFECT_OFF,
LIGHT_EFFECT_FLASHING,
LIGHT_EFFECT_UNKOWN,
};
public:
void SetChamberLight(const std::string& status);
void SetChamberLight(LIGHT_EFFECT effect) { m_chamber_light = effect; }
bool IsChamberLightOn() const { return m_chamber_light == LIGHT_EFFECT_ON || m_chamber_light == LIGHT_EFFECT_FLASHING; }
void SetLampCloseRecheck(bool enable) { m_lamp_close_recheck = enable;};
bool HasLampCloseRecheck() const { return m_lamp_close_recheck; }
public:
void CtrlSetChamberLight(LIGHT_EFFECT effect);
private:
int command_set_chamber_light(LIGHT_EFFECT effect, int on_time = 500, int off_time = 500, int loops = 1, int interval = 1000);
int command_set_chamber_light2(LIGHT_EFFECT effect, int on_time = 500, int off_time = 500, int loops = 1, int interval = 1000);
private:
MachineObject* m_owner = nullptr;
bool m_lamp_close_recheck = false;
LIGHT_EFFECT m_chamber_light = LIGHT_EFFECT_UNKOWN;
};
}