Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
iv::model::diamar::DiamarModel Class Referencefinal

#include <DiamarModel.hpp>

Inheritance diagram for iv::model::diamar::DiamarModel:
[legend]
Collaboration diagram for iv::model::diamar::DiamarModel:
[legend]

Classes

struct  Keys
 
struct  Sections
 

Public Member Functions

 DiamarModel ()
 
 DiamarModel (const DiamarModel &other)=delete
 
 DiamarModel (DiamarModel &&other)=delete
 
 ~DiamarModel () override
 
DiamarModeloperator= (const DiamarModel &other)=delete
 
DiamarModeloperator= (DiamarModel &&other)=delete
 
void deleteModel () override
 
bool load (std::string_view projectFolder_)
 
bool save (std::string_view projectFolder_)
 
bool update (std::string_view projectFolder_)
 Update the model with the data from the project folder.
 
bool hasChanged (const std::string &projectFolder_, std::string &changesMsg) const
 

Public Attributes

iv::time::Timestamp m_lastUpdate
 
std::shared_ptr< iv::model::ShipInfom_shipInfo
 
std::shared_ptr< iv::model::ProjectInfom_projectInfo
 
std::shared_ptr< iv::model::Changesm_changes
 
std::shared_ptr< iv::diamar::Settingsm_settings
 
std::map< iv::eLanguage, bool > m_languages
 
std::shared_ptr< iv::diamar::Stationsm_stations
 
std::shared_ptr< iv::model::diamar::Cabinetsm_cabinets
 
std::shared_ptr< iv::units::Unitsm_units
 
std::shared_ptr< iv::model::pms::PmsManagerm_pmsManager
 
std::shared_ptr< iv::model::control::ControlManagerm_controlManager
 
std::shared_ptr< iv::diamar::Mimicsm_mimics
 
iv::model::GroupMenuModel< std::weak_ptr< iv::diamar::Mimic > > m_mimicsGroups
 
std::shared_ptr< iv::model::diamar::Groupsm_groups
 
std::shared_ptr< iv::alarms::WatchcallManagerm_watchcallManager
 
std::shared_ptr< iv::tanks::Tanksm_tanks
 
std::shared_ptr< iv::logic::ParametersOnlinem_parametersOnline
 
std::shared_ptr< iv::logic::StationLogicsm_stationLogic
 
std::map< iv::types::unitId, std::shared_ptr< iv::logic::StationLogics > > m_lumLogics
 
std::string projectFolder
 
iv::eProgramCaller programCaller {iv::eProgramCaller::Diamar}
 

Private Member Functions

bool loadLanguages (const iv::file::xml::node &nodeConfigDiamar)
 Load the languages from the XML node.
 
bool saveLanguages (iv::file::xml::node &nodeConfigDiamar) const
 

Constructor & Destructor Documentation

◆ DiamarModel() [1/3]

iv::model::diamar::DiamarModel::DiamarModel ( )

◆ DiamarModel() [2/3]

iv::model::diamar::DiamarModel::DiamarModel ( const DiamarModel & other)
delete

◆ DiamarModel() [3/3]

iv::model::diamar::DiamarModel::DiamarModel ( DiamarModel && other)
delete

◆ ~DiamarModel()

iv::model::diamar::DiamarModel::~DiamarModel ( )
overridedefault

Member Function Documentation

◆ deleteModel()

void iv::model::diamar::DiamarModel::deleteModel ( )
overridevirtual

Implements iv::model::IModel.

◆ hasChanged()

bool iv::model::diamar::DiamarModel::hasChanged ( const std::string & projectFolder_,
std::string & changesMsg ) const
nodiscard

Config File

NetworkData File

DataProject File

Unit in DataProject

Mimic in DataProject

Mimic file

◆ load()

bool iv::model::diamar::DiamarModel::load ( std::string_view projectFolder_)
nodiscard

◆ loadLanguages()

bool iv::model::diamar::DiamarModel::loadLanguages ( const iv::file::xml::node & nodeConfigDiamar)
private

Load the languages from the XML node.

Parameters
nodeConfigDiamarConfig Diamar XML node.
Returns
True if the languages were loaded successfully, false otherwise.
Note
This load function is pointer-free.

◆ operator=() [1/2]

DiamarModel & iv::model::diamar::DiamarModel::operator= ( const DiamarModel & other)
delete

◆ operator=() [2/2]

DiamarModel & iv::model::diamar::DiamarModel::operator= ( DiamarModel && other)
delete

◆ save()

bool iv::model::diamar::DiamarModel::save ( std::string_view projectFolder_)
nodiscard

◆ saveLanguages()

bool iv::model::diamar::DiamarModel::saveLanguages ( iv::file::xml::node & nodeConfigDiamar) const
private

◆ update()

bool iv::model::diamar::DiamarModel::update ( std::string_view projectFolder_)

Update the model with the data from the project folder.

Parameters
projectFolder_The project folder
Returns
True if the model was updated successfully
Note
Mainly used for project synchronization

Config File

NetworkData File

DataProject File

Member Data Documentation

◆ m_cabinets

std::shared_ptr<iv::model::diamar::Cabinets> iv::model::diamar::DiamarModel::m_cabinets

◆ m_changes

std::shared_ptr<iv::model::Changes> iv::model::diamar::DiamarModel::m_changes

◆ m_controlManager

std::shared_ptr<iv::model::control::ControlManager> iv::model::diamar::DiamarModel::m_controlManager

◆ m_groups

std::shared_ptr<iv::model::diamar::Groups> iv::model::diamar::DiamarModel::m_groups

◆ m_languages

std::map<iv::eLanguage, bool> iv::model::diamar::DiamarModel::m_languages

◆ m_lastUpdate

iv::time::Timestamp iv::model::diamar::DiamarModel::m_lastUpdate

Fecha de última actualización del proyecto, incluidas descargas en los LOM

◆ m_lumLogics

std::map<iv::types::unitId, std::shared_ptr<iv::logic::StationLogics> > iv::model::diamar::DiamarModel::m_lumLogics

◆ m_mimics

std::shared_ptr<iv::diamar::Mimics> iv::model::diamar::DiamarModel::m_mimics

◆ m_mimicsGroups

iv::model::GroupMenuModel<std::weak_ptr<iv::diamar::Mimic> > iv::model::diamar::DiamarModel::m_mimicsGroups

◆ m_parametersOnline

std::shared_ptr<iv::logic::ParametersOnline> iv::model::diamar::DiamarModel::m_parametersOnline

◆ m_pmsManager

std::shared_ptr<iv::model::pms::PmsManager> iv::model::diamar::DiamarModel::m_pmsManager

◆ m_projectInfo

std::shared_ptr<iv::model::ProjectInfo> iv::model::diamar::DiamarModel::m_projectInfo

◆ m_settings

std::shared_ptr<iv::diamar::Settings> iv::model::diamar::DiamarModel::m_settings

◆ m_shipInfo

std::shared_ptr<iv::model::ShipInfo> iv::model::diamar::DiamarModel::m_shipInfo

◆ m_stationLogic

std::shared_ptr<iv::logic::StationLogics> iv::model::diamar::DiamarModel::m_stationLogic

◆ m_stations

std::shared_ptr<iv::diamar::Stations> iv::model::diamar::DiamarModel::m_stations

◆ m_tanks

std::shared_ptr<iv::tanks::Tanks> iv::model::diamar::DiamarModel::m_tanks

◆ m_units

std::shared_ptr<iv::units::Units> iv::model::diamar::DiamarModel::m_units

◆ m_watchcallManager

std::shared_ptr<iv::alarms::WatchcallManager> iv::model::diamar::DiamarModel::m_watchcallManager

◆ programCaller

iv::eProgramCaller iv::model::IModel::programCaller {iv::eProgramCaller::Diamar}
inherited

◆ projectFolder

std::string iv::model::IModel::projectFolder
inherited

The documentation for this class was generated from the following files: