Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CUnitPattern Class Reference

#include <CUnitPatterns.hpp>

Classes

struct  SChannelType
 
struct  SChannelTypeWired
 

Public Types

typedef std::pair< iv::types::channelOrder, iv::types::channelOrderTChannelRange
 
typedef std::map< TChannelRange, SChannelType * > TMapChannelRangeType
 

Public Member Functions

 CUnitPattern (iv::units::eUnitType unitType, int32_t maxWiredChannels)
 
 CUnitPattern ()=delete
 
 ~CUnitPattern ()
 
 CUnitPattern (const CUnitPattern &other)
 
 CUnitPattern (CUnitPattern &&other)=delete
 
CUnitPatternoperator= (const CUnitPattern &other)=default
 
CUnitPatternoperator= (CUnitPattern &&other)=delete
 
const TMapChannelRangeTypegetWiredChannelRangeType () const
 
const SChannelTypeWiredgetWiredChannelType (uint16_t channelId) const
 
const std::vector< SChannelType * > & getNonWiredChannelTypesAllowed () const
 
bool canHaveChannels () const
 
bool hasUnitInfo () const
 
bool isWiredChannelWATankChangeable (uint16_t channelId) const
 

Static Public Member Functions

static std::vector< iv::types::Range< iv::types::channelOrder > > getRangeChannelOrder (iv::channels::eChannelSpecificType channelSpecificType, iv::units::eUnitType unitType)
 
static void getRangeUnitId (iv::units::eUnitType unitType, iv::types::unitId &start, iv::types::unitId &end)
 
static bool isUnitIdValid (iv::units::eUnitType unitType, const iv::types::unitId &unitId)
 
static iv::channels::eChannelBaseType getBaseType (iv::channels::eChannelSpecificType chSpecificType)
 

Private Member Functions

void prvAddNonWiredChannelTypeAllowed (iv::channels::eChannelSpecificType chSpecificType)
 
void prvAddWiredChannelTypeRange (iv::channels::eChannelSpecificType chSpecificType, TChannelRange range, iv::channels::WiredAttributes::eIOType ioType)
 
void prvBuildPatternAIM18 ()
 
void prvBuildPatternDIM36 ()
 
void prvBuildPatternDIOM24 ()
 
void prvBuildPatternLUM ()
 
void prvBuildPatternPMM ()
 
void prvBuildPatternTIM28 ()
 
void prvAddCommonNonWiredChannelTypesAllowed (iv::units::eUnitType unitType)
 
void prvBuildPattern (iv::units::eUnitType unitType)
 

Static Private Member Functions

static void prvBuildPatternRMS ()
 
static void prvBuildPatternSlim ()
 

Private Attributes

iv::units::eUnitType m_unitType
 
int32_t m_maxWiredChannels
 
TMapChannelRangeType m_wiredChannelsType
 
std::vector< SChannelType * > m_nonWiredChannelTypesAllowed
 TODO RAG: ¿Habría que cambiar esto en un futuro a puntero inteligente?
 

Detailed Description

Class defining the channel types for each type of unit.

Member Typedef Documentation

◆ TChannelRange

◆ TMapChannelRangeType

Constructor & Destructor Documentation

◆ CUnitPattern() [1/4]

CUnitPattern::CUnitPattern ( iv::units::eUnitType unitType,
int32_t maxWiredChannels )

◆ CUnitPattern() [2/4]

CUnitPattern::CUnitPattern ( )
delete

◆ ~CUnitPattern()

CUnitPattern::~CUnitPattern ( )

◆ CUnitPattern() [3/4]

CUnitPattern::CUnitPattern ( const CUnitPattern & other)

◆ CUnitPattern() [4/4]

CUnitPattern::CUnitPattern ( CUnitPattern && other)
delete

Member Function Documentation

◆ canHaveChannels()

bool CUnitPattern::canHaveChannels ( ) const
nodiscard

CUnitPattern::canHaveChannels

True if the type of module supports any type of channel (wired or virtual); false otherwise.

◆ getBaseType()

iv::channels::eChannelBaseType CUnitPattern::getBaseType ( iv::channels::eChannelSpecificType chSpecificType)
static

◆ getNonWiredChannelTypesAllowed()

const std::vector< CUnitPattern::SChannelType * > & CUnitPattern::getNonWiredChannelTypesAllowed ( ) const
nodiscard

◆ getRangeChannelOrder()

std::vector< iv::types::Range< iv::types::channelOrder > > CUnitPattern::getRangeChannelOrder ( iv::channels::eChannelSpecificType channelSpecificType,
iv::units::eUnitType unitType )
static

◆ getRangeUnitId()

void CUnitPattern::getRangeUnitId ( iv::units::eUnitType unitType,
iv::types::unitId & start,
iv::types::unitId & end )
static

◆ getWiredChannelRangeType()

const CUnitPattern::TMapChannelRangeType & CUnitPattern::getWiredChannelRangeType ( ) const
nodiscard

◆ getWiredChannelType()

const CUnitPattern::SChannelTypeWired * CUnitPattern::getWiredChannelType ( uint16_t channelId) const
nodiscard

◆ hasUnitInfo()

bool CUnitPattern::hasUnitInfo ( ) const
nodiscard

CUnitPattern::hasUnitInfo

True if the type of module holds unit information; false otherwise.

Note
Función repetida en ParametersDownloadManager.cpp

◆ isUnitIdValid()

bool CUnitPattern::isUnitIdValid ( iv::units::eUnitType unitType,
const iv::types::unitId & unitId )
static

◆ isWiredChannelWATankChangeable()

bool CUnitPattern::isWiredChannelWATankChangeable ( uint16_t channelId) const
nodiscard

◆ operator=() [1/2]

CUnitPattern & CUnitPattern::operator= ( const CUnitPattern & other)
default

◆ operator=() [2/2]

CUnitPattern & CUnitPattern::operator= ( CUnitPattern && other)
delete

◆ prvAddCommonNonWiredChannelTypesAllowed()

void CUnitPattern::prvAddCommonNonWiredChannelTypesAllowed ( iv::units::eUnitType unitType)
private

◆ prvAddNonWiredChannelTypeAllowed()

void CUnitPattern::prvAddNonWiredChannelTypeAllowed ( iv::channels::eChannelSpecificType chSpecificType)
private

◆ prvAddWiredChannelTypeRange()

void CUnitPattern::prvAddWiredChannelTypeRange ( iv::channels::eChannelSpecificType chSpecificType,
TChannelRange range,
iv::channels::WiredAttributes::eIOType ioType )
private

◆ prvBuildPattern()

void CUnitPattern::prvBuildPattern ( iv::units::eUnitType unitType)
private

◆ prvBuildPatternAIM18()

void CUnitPattern::prvBuildPatternAIM18 ( )
private

◆ prvBuildPatternDIM36()

void CUnitPattern::prvBuildPatternDIM36 ( )
private

◆ prvBuildPatternDIOM24()

void CUnitPattern::prvBuildPatternDIOM24 ( )
private

◆ prvBuildPatternLUM()

void CUnitPattern::prvBuildPatternLUM ( )
private

◆ prvBuildPatternPMM()

void CUnitPattern::prvBuildPatternPMM ( )
private

◆ prvBuildPatternRMS()

void CUnitPattern::prvBuildPatternRMS ( )
staticprivate

◆ prvBuildPatternSlim()

void CUnitPattern::prvBuildPatternSlim ( )
staticprivate

◆ prvBuildPatternTIM28()

void CUnitPattern::prvBuildPatternTIM28 ( )
private

Member Data Documentation

◆ m_maxWiredChannels

int32_t CUnitPattern::m_maxWiredChannels
private

◆ m_nonWiredChannelTypesAllowed

std::vector<SChannelType *> CUnitPattern::m_nonWiredChannelTypesAllowed
private

TODO RAG: ¿Habría que cambiar esto en un futuro a puntero inteligente?

◆ m_unitType

iv::units::eUnitType CUnitPattern::m_unitType
private

◆ m_wiredChannelsType

TMapChannelRangeType CUnitPattern::m_wiredChannelsType
private

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