X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/ee2cb3d6c26ae319d20bde28f415393e96611ece..ea3d0f30b8e44952b1b9ac3e2f5b2a08cd65ca48:/Constructor/include/cistern.h?ds=sidebyside diff --git a/Constructor/include/cistern.h b/Constructor/include/cistern.h index 1c874ea..3dc8d8c 100644 --- a/Constructor/include/cistern.h +++ b/Constructor/include/cistern.h @@ -25,8 +25,12 @@ class Cistern : public CItem { void set_capacidad(double _cap); void set_contenido_inicial(double _ini); void set_liquid_color(Gdk::Color _color); + void set_flotante_sup (double _s); + void set_flotante_inf(double _i); double get_contenido_inicial(); double get_capacidad(); + double get_flotante_sup(); + double get_flotante_inf(); Gdk::Color get_liquid_color(); /**El item se guarda en formato xml en el archivo pasado por parametro */ @@ -41,13 +45,28 @@ class Cistern : public CItem { */ virtual ConnectorType get_connector_type(int _a, int _b); - /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos. + /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos a la entrada. */ - virtual void get_logic_connect_position(int& _a, int& _b); + virtual void get_in_logic_connect_position(int& _a, int& _b); + + /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos a la salida. + */ + virtual void get_out_logic_connect_position(int& _a, int& _b); + + /**Actualiza la posicion de los conectores logicos ante un movimiento. + */ + virtual void update_logic_position(); + + /**Detecta si el click fue en el area de entrada o salida logica, devuelve UNDEF si no fue ninguna de las dos + */ + ConnectorType detect_click_position(int _a, int _b); + /**Dibuja los conectores logicos, que seran ambos azules pues son salidas. + */ + virtual void draw_connectors(); protected: /**Atributos que definen su comportamiento */ - double capacidad, contenido_inicial; + double capacidad, contenido_inicial, flotante_sup, flotante_inf; /**Color del liquido almacenado */ Gdk::Color liquid_color;