Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
|
#include <AbstractMimicElement.hpp>
Classes | |
struct | Constants |
struct | DefaultValues |
struct | Keys |
struct | Sections |
Public Member Functions | |
virtual | ~AbstractMimicElement () |
virtual bool | load (const iv::file::xml::node &nodeControlMimic) |
virtual bool | save (iv::file::xml::node &nodeControlMimic) const |
const iv::mimics::TitleSettings & | getTitleSettings () const |
virtual std::shared_ptr< iv::mimics::AbstractMimicElement > | clone () const =0 |
std::weak_ptr< iv::mimics::OnlineVariables > | getOnlineVariables () const |
virtual void | updateEnabledLanguages (const std::set< iv::eLanguage > &enabledLanguages) |
virtual void | mapChannels (const std::function< void(std::weak_ptr< iv::channels::AbstractChannel > &)> &mapFunction) |
Processed gets ///. | |
virtual void | getChannels (const std::shared_ptr< std::vector< std::weak_ptr< iv::channels::AbstractChannel > > > &channelsInControl) const |
Añade los canales que el MimicElement tiene enlazado. | |
virtual void | addOptionsMenu (const std::shared_ptr< iv::mimics::MimicControlMenu > &menu) |
bool | isPointInMimic (iv::types::coord x, iv::types::coord y) const |
virtual std::optional< iv::types::color > | getColorWorkingState () const |
Retrieves the color representing the current working state of the element. | |
virtual std::optional< iv::types::color > | getColorControlState () const |
Retrieves the color representing the current control state of the element. | |
virtual std::optional< std::string > | getStringWorkingState () const |
virtual std::optional< std::string > | getStringControlState () const |
virtual std::optional< iv::mimics::eAlarmState > | getAlarmState () const |
virtual iv::math::geometry::Point2d | getAlarmIconPosition (const iv::math::geometry::Area &elementSize) const |
virtual bool | canShowCircularMenu () const |
Behaviours gets ///. | |
virtual bool | hasAlternativeAction () const |
virtual void | executeCommand (const std::string &strAction) const =0 |
Run actions ///. | |
virtual void | runCommandControlWithoutMenu () |
Ejecuta un comando accionado sin el menu de opciones (caso de un botón) | |
virtual void | runAlternativeAction (CDialog *dlgFatherRef) |
Ejecuta código específico del control. | |
virtual void | runEvaluation () |
Ejecuta la evaluación del control. | |
virtual AbstractComponentGUI * | panelEditControl ()=0 |
UI methods ///. | |
virtual void | postProcess () |
PROCESSES. | |
void | draw (IGraphics *graphics, iv::eLanguage drawingLanguage, const std::optional< std::unordered_set< iv::types::channelId > > &channelsRepeatedOpt=std::nullopt, const std::optional< std::set< std::shared_ptr< AbstractMimicElement > > > &otherMimicElements=std::nullopt) |
DRAWS. | |
void | setRedrawFlag (bool reDrawFlag=true) |
void | removeGraphicsObjects (IGraphics *graphics) |
Elimina el elemento gráfico. | |
virtual void | move (double dx, double dy) |
MOVEMENTS. | |
bool | rotate (double angle) |
void | handleEvent (CEventMotion *evtMotion) |
Public Attributes | |
eZDepth | m_depth |
iv::mimics::eMimicElementType | m_mimicElementType |
iv::mimics::Location | m_location |
iv::types::width | m_width |
iv::types::height | m_height |
iv::mimics::TitleSettings | m_titleSettings |
iv::mimics::Background | m_background |
std::shared_ptr< OnlineVariables > | m_onlineVariables |
std::shared_ptr< std::vector< std::weak_ptr< iv::channels::AbstractChannel > > > | m_addedAlarms |
Protected Member Functions | |
AbstractMimicElement (iv::mimics::eMimicElementType elementType) | |
AbstractMimicElement (const AbstractMimicElement &other) | |
std::vector< iv::math::geometry::Point2d > | calculateLimits (IGraphics *graphics, iv::eLanguage drawingLanguage) |
virtual bool | checkIntegrity () const |
virtual bool | hasRepeatedChannels (const std::unordered_set< iv::types::channelId > &channelsRepeatedOpt) const |
Checks if the current mimic element contains any repeated channels. | |
virtual bool | isRepeatedMimicElement (const std::set< std::shared_ptr< AbstractMimicElement > > &otherMimicsElements) const |
Determines whether the current mimic element shares significant similarities with others. | |
virtual void | drawSpecific (IGraphics *graphics, std::optional< iv::types::color > colorWorkingState, std::optional< iv::types::color > colorControlState, iv::eLanguage drawingLanguage)=0 |
Draws the specific abstract element shape. | |
AbstractComponentGUI * | buttonEditTitle () |
AbstractComponentGUI * | panelEditSize () |
AbstractComponentGUI * | panelEditOnlineVariables () const |
AbstractComponentGUI * | panelEditAddedAlarms () const |
Protected Attributes | |
bool | m_redrawFlag {false} |
Private Member Functions | |
std::unique_ptr< CDrawText > | prvCreateTextTitle (iv::eLanguage language) const |
void | applyPosition (IGraphics *graphics) const |
void | applyRotation (IGraphics *graphics) const |
std::optional< iv::mimics::eAlarmState > | getAddedAlarmsMimicAlarmState () const |
Static Private Member Functions | |
static bool | checkHasRepeated (const std::unordered_set< iv::types::channelId > &repeatedChannels, const std::shared_ptr< std::vector< std::weak_ptr< iv::channels::AbstractChannel > > > &elementChannels) |
Private Attributes | |
std::unique_ptr< CDrawText > | m_textTitleOpt |
std::shared_ptr< std::vector< iv::math::geometry::Point2d > > | m_polylinesLimits |
uint32_t | m_idBlockBackground |
uint32_t | m_idBlockForegorund |
bool | m_isCreatedForeground {false} |
bool | m_isCreatedBackground {false} |
bool | m_isMarked {false} |
|
virtualdefault |
|
explicitprotected |
|
protected |
|
virtual |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Text, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, and iv::mimics::elementsPms::GeneratorPms.
|
private |
|
private |
|
protected |
|
protected |
|
nodiscardvirtual |
Behaviours gets ///.
Reimplemented in iv::mimics::auxiliary::Link, iv::mimics::elements::PmsPriorities, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
staticprivate |
|
nodiscardprotectedvirtual |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Link, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Text, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
nodiscardpure virtual |
Implemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Link, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Square, iv::mimics::auxiliary::Text, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Motor, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Propeller, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
void iv::mimics::AbstractMimicElement::draw | ( | IGraphics * | graphics, |
iv::eLanguage | drawingLanguage, | ||
const std::optional< std::unordered_set< iv::types::channelId > > & | channelsRepeatedOpt = std::nullopt, | ||
const std::optional< std::set< std::shared_ptr< AbstractMimicElement > > > & | otherMimicElements = std::nullopt ) |
DRAWS.
Dibuja el elemento en pantalla, con título, background, alarma, toda la parte común de todos los elementos.
graphics | |
drawingLanguage | Language to draw the element |
channelsRepeatedOpt |
|
protectedpure virtual |
Draws the specific abstract element shape.
graphics | |
colorWorkingState | |
colorControlState | |
drawingLanguage |
Implemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Polyline, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Motor, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Propeller, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, iv::mimics::elementsPms::OperationModesPms, and iv::mimics::Text.
|
pure virtual |
Run actions ///.
Ejecuta un comando accionado desde el menu de opciones
strAction |
Implemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Polyline, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, iv::mimics::elementsPms::OperationModesPms, and iv::mimics::Text.
|
nodiscardprivate |
|
nodiscardvirtual |
Reimplemented in iv::mimics::elementsPms::GeneratorPms.
|
nodiscardvirtual |
Reimplemented in iv::mimics::Digital, iv::mimics::elements::Breaker, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, and iv::mimics::elementsPms::GeneratorPms.
|
virtual |
Añade los canales que el MimicElement tiene enlazado.
[out] | channelsInControl | Map of channels in mimic element |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Text, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
nodiscardvirtual |
Retrieves the color representing the current control state of the element.
The control state describes how the element is being controlled, with examples including Remote/Local or Online/Offline. The returned color, if any, is intended to visually convey the control mode.
Reimplemented in iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Fan, iv::mimics::elements::Generator, and iv::mimics::elements::Pump.
|
nodiscardvirtual |
Retrieves the color representing the current working state of the element.
The working state reflects the functional status of the element, which can represent states such as Running/Stopped, Open/Closed, or Undefined. The returned color, if any, is intended to visually indicate this status.
Reimplemented in iv::mimics::Digital, iv::mimics::elements::Breaker, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, and iv::mimics::elementsPms::BreakerPms.
|
nodiscard |
|
nodiscardvirtual |
|
nodiscardvirtual |
Reimplemented in iv::mimics::Digital, iv::mimics::elements::Breaker, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, and iv::mimics::elementsPms::GeneratorPms.
|
inlinenodiscard |
void iv::mimics::AbstractMimicElement::handleEvent | ( | CEventMotion * | evtMotion | ) |
TODO: No se usa, y junto a este, el executeCommand
|
nodiscardvirtual |
Reimplemented in iv::mimics::auxiliary::Link, iv::mimics::elements::PmsPriorities, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
protectedvirtual |
Checks if the current mimic element contains any repeated channels.
channelsRepeatedOpt | A set of channel IDs that are considered as repeated. |
Reimplemented in iv::mimics::elements::DynamicText, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, and iv::mimics::elementsPms::GeneratorPms.
|
nodiscard |
|
protectedvirtual |
Determines whether the current mimic element shares significant similarities with others.
otherMimicsElements | A set of other mimics elements to be compared against. |
Reimplemented in iv::mimics::elements::DynamicText, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, and iv::mimics::elementsPms::GeneratorPms.
|
virtual |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Link, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Square, iv::mimics::auxiliary::Text, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Motor, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Propeller, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, iv::mimics::elementsPms::OperationModesPms, and iv::mimics::Text.
|
virtual |
Processed gets ///.
Applies a function over each channel in the mimic element
mapFunction | Function to apply over each channel |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Text, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Pump, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
virtual |
MOVEMENTS.
Reimplemented in iv::mimics::auxiliary::Line, and iv::mimics::auxiliary::Polyline.
|
nodiscardprotected |
|
pure virtual |
UI methods ///.
PANELS
Crea el panel de edición del control.
Implemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Link, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Square, iv::mimics::auxiliary::Text, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Motor, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Propeller, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, iv::mimics::elementsPms::OperationModesPms, and iv::mimics::Text.
|
nodiscardprotected |
|
protected |
|
virtual |
PROCESSES.
Procesa ciertos atributos del elemento.
Reimplemented in iv::mimics::auxiliary::Line, and iv::mimics::auxiliary::Square.
|
nodiscardprivate |
void iv::mimics::AbstractMimicElement::removeGraphicsObjects | ( | IGraphics * | graphics | ) |
Elimina el elemento gráfico.
graphics |
bool iv::mimics::AbstractMimicElement::rotate | ( | double | angle | ) |
|
virtual |
Ejecuta código específico del control.
Reimplemented in iv::mimics::auxiliary::Link, iv::mimics::elements::PmsPriorities, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, and iv::mimics::elementsPms::OperationModesPms.
|
virtual |
Ejecuta un comando accionado sin el menu de opciones (caso de un botón)
|
virtual |
Ejecuta la evaluación del control.
|
virtual |
Reimplemented in iv::mimics::auxiliary::Image, iv::mimics::auxiliary::Line, iv::mimics::auxiliary::Link, iv::mimics::auxiliary::Polyline, iv::mimics::auxiliary::Text, iv::mimics::Digital, iv::mimics::elements::AlarmIndicator, iv::mimics::elements::Breaker, iv::mimics::elements::Command, iv::mimics::elements::Compressor, iv::mimics::elements::Damper, iv::mimics::elements::Dial, iv::mimics::elements::Digital, iv::mimics::elements::Display, iv::mimics::elements::DynamicText, iv::mimics::elements::Fan, iv::mimics::elements::Generator, iv::mimics::elements::LevelBar, iv::mimics::elements::Motor, iv::mimics::elements::PmsPriorities, iv::mimics::elements::Propeller, iv::mimics::elements::Pump, iv::mimics::elements::Shaft, iv::mimics::elements::Tank, iv::mimics::elements::Text, iv::mimics::elements::Valve, iv::mimics::elementsAutomated::DamperAutomated, iv::mimics::elementsAutomated::ValveAutomated, iv::mimics::elementsPms::BreakerPms, iv::mimics::elementsPms::GeneratorPms, iv::mimics::elementsPms::OperationModesPms, and iv::mimics::Text.
void iv::mimics::AbstractMimicElement::setRedrawFlag | ( | bool | reDrawFlag = true | ) |
|
virtual |
std::shared_ptr<std::vector<std::weak_ptr<iv::channels::AbstractChannel> > > iv::mimics::AbstractMimicElement::m_addedAlarms |
iv::mimics::Background iv::mimics::AbstractMimicElement::m_background |
eZDepth iv::mimics::AbstractMimicElement::m_depth |
Model
iv::types::height iv::mimics::AbstractMimicElement::m_height |
|
private |
|
private |
|
private |
|
private |
|
private |
iv::mimics::Location iv::mimics::AbstractMimicElement::m_location |
iv::mimics::eMimicElementType iv::mimics::AbstractMimicElement::m_mimicElementType |
std::shared_ptr<OnlineVariables> iv::mimics::AbstractMimicElement::m_onlineVariables |
|
private |
|
protected |
Controller
|
private |
iv::mimics::TitleSettings iv::mimics::AbstractMimicElement::m_titleSettings |
iv::types::width iv::mimics::AbstractMimicElement::m_width |