public:
/**Constructor
*/
- Cistern();
+ Cistern(int orientacion=0);
/**Destructor
*/
virtual ~Cistern();
/**Devuelve el tipo de conector que posee en las coordenadas (_a, _b) segun su orientacion
*/
virtual ConnectorType get_connector_type(int _a, int _b);
+
+ /**Setea las coordenadas _a, _b en la posicion donde se deben conectar los cables logicos a la entrada.
+ */
+ 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
*/