CisternStateLogic.h

00001 #ifndef _CISTERNSTATELOGIC_H
00002 #define _CISTERNSTATELOGIC_H
00003 // -------------------------------------------------------------------------
00004 #include <UniSetTypes.h>
00005 #include <objects/AbstractLogic.h>
00006 #include <USignals.h>
00007 #include <plugins.h>
00008 #include <global_macros.h>
00009 // -------------------------------------------------------------------------
00010 namespace UniWidgets
00011 {
00012 class CisternShowLogic;
00023 class CisternStateLogic : public AbstractLogic
00024 {
00025 public:
00026     CisternStateLogic();
00027     explicit CisternStateLogic(Gtk::EventBox::BaseObjectType* gobject);
00028     virtual ~CisternStateLogic();
00029 
00030     virtual void connect();
00031 protected:
00032     /* Methods */
00033     virtual void on_init();             
00035 private:
00036     /* Variables */
00037   CisternShowLogic* current_cistern_;       
00038     long current_value_;                
00040     /* Methods */
00041     void constructor();
00042     void init_state();              
00043     void set_state(const long value);       
00044     void set_current_state();           
00046     void set_message_handler();
00047     void set_confirm_handler(UMessages::MessageId id);
00048     void set_sensor_handler();
00049 
00050     /* Handlers */
00051     void confirm_handler(UMessages::MessageId id, time_t sec);
00052     void message_handler(UMessages::MessageId id, Glib::ustring msg);
00053     void sensor_handler(UniSetTypes::ObjectId sensor, UniSetTypes::ObjectId node, long value);
00054 
00055     void set_state_object();
00056 
00057     DISALLOW_COPY_AND_ASSIGN(CisternStateLogic);
00058     /* Properties */
00059     ADD_PROPERTY( state_di, UniSetTypes::ObjectId )
00060     ADD_PROPERTY( state_obj_ai, UniSetTypes::ObjectId )
00061     ADD_PROPERTY( mode, UniSetTypes::ObjectId )
00062     ADD_PROPERTY( threshold, UniSetTypes::ObjectId )
00063     ADD_PROPERTY( node, UniSetTypes::ObjectId )
00064 };
00065 
00066 }
00067 
00068 #endif

Документация по UniWidgets. Последние изменения: Fri Oct 10 09:57:49 2014. Создано системой  doxygen 1.5.9