UniSet  1.4.0
Классы | Открытые типы | Открытые члены | Открытые статические члены | Защищенные типы | Защищенные члены | Защищенные данные
Класс IOControl

#include <IOControl.h>

Граф наследования:IOControl:
UniSetObject UniSetObject

Полный список членов класса

Классы

struct  IOInfo
struct  IOPriority

Открытые типы

enum  TestModeID {
  tmNone = 0, tmOffPoll = 1, tmConfigEnable = 2, tmConfigDisable = 3,
  tmOnlyInputs = 4, tmOnlyOutputs = 5, tmNone = 0, tmOffPoll = 1,
  tmConfigEnable = 2, tmConfigDisable = 3, tmOnlyInputs = 4, tmOnlyOutputs = 5
}
enum  TestModeID {
  tmNone = 0, tmOffPoll = 1, tmConfigEnable = 2, tmConfigDisable = 3,
  tmOnlyInputs = 4, tmOnlyOutputs = 5, tmNone = 0, tmOffPoll = 1,
  tmConfigEnable = 2, tmConfigDisable = 3, tmOnlyInputs = 4, tmOnlyOutputs = 5
}

Открытые члены

 IOControl (UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID, SharedMemory *ic=0, int numcards=2, const std::string prefix="io")
void execute ()
 IOControl (UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID, SharedMemory *ic=0, int numcards=2, const std::string prefix="io")
void execute ()

Открытые статические члены

static IOControlinit_iocontrol (int argc, const char *const *argv, UniSetTypes::ObjectId icID, SharedMemory *ic=0, const std::string prefix="io")
static void help_print (int argc, const char *const *argv)
static IOControlinit_iocontrol (int argc, const char *const *argv, UniSetTypes::ObjectId icID, SharedMemory *ic=0, const std::string prefix="io")
static void help_print (int argc, const char *const *argv)

Защищенные типы

typedef std::vector< IOInfoIOMap
typedef std::list< IOPriorityPIOMap
typedef std::list< IOInfo * > BlinkList
typedef std::vector< IOInfoIOMap
typedef std::list< IOPriorityPIOMap
typedef std::list< IOInfo * > BlinkList

Защищенные члены

void iopoll ()
void ioread (IOInfo *it)
void check_testlamp ()
void check_testmode ()
void blink ()
virtual void processingMessage (UniSetTypes::VoidMessage *msg)
virtual void sysCommand (UniSetTypes::SystemMessage *sm)
virtual void askSensors (UniversalIO::UIOCommand cmd)
virtual void sensorInfo (UniSetTypes::SensorMessage *sm)
virtual void timerInfo (UniSetTypes::TimerMessage *tm)
virtual void sigterm (int signo)
virtual bool activateObject ()
 Активизация объекта (переопределяется для необходимых действий после активизации)
void initOutputs ()
void initIOCard ()
void readConfiguration ()
bool initIOItem (UniXML_iterator &it)
bool readItem (UniXML &xml, UniXML_iterator &it, xmlNode *sec)
void buildCardsList ()
void waitSM ()
bool checkCards (const std::string func="")
void addBlink (IOInfo *it, BlinkList &lst)
void delBlink (IOInfo *it, BlinkList &lst)
void blink (BlinkList &lst, bool &bstate)
void iopoll ()
void ioread (IOInfo *it)
void check_testlamp ()
void check_testmode ()
void blink ()
virtual void processingMessage (UniSetTypes::VoidMessage *msg)
virtual void sysCommand (UniSetTypes::SystemMessage *sm)
virtual void askSensors (UniversalIO::UIOCommand cmd)
virtual void sensorInfo (UniSetTypes::SensorMessage *sm)
virtual void timerInfo (UniSetTypes::TimerMessage *tm)
virtual void sigterm (int signo)
virtual bool activateObject ()
 Активизация объекта (переопределяется для необходимых действий после активизации)
void initOutputs ()
void initIOCard ()
void readConfiguration ()
bool initIOItem (UniXML_iterator &it)
bool readItem (UniXML &xml, UniXML_iterator &it, xmlNode *sec)
void buildCardsList ()
void waitSM ()
bool checkCards (const std::string func="")
void addBlink (IOInfo *it, BlinkList &lst)
void delBlink (IOInfo *it, BlinkList &lst)
void blink (BlinkList &lst, bool &bstate)

Защищенные данные

xmlNode * cnode
int polltime
CardList cards
bool noCards
IOMap iomap
PIOMap pmap
unsigned int maxItem
unsigned int maxHalf
int filtersize
float filterT
std::string s_field
std::string s_fvalue
SMInterfaceshm
UniversalInterface ui
UniSetTypes::ObjectId myid
std::string prefix
BlinkList lstBlink
PassiveTimer ptBlink
bool blink_state
BlinkList lstBlink2
PassiveTimer ptBlink2
bool blink2_state
BlinkList lstBlink3
PassiveTimer ptBlink3
bool blink3_state
UniSetTypes::ObjectId testLamp_S
Trigger trTestLamp
bool isTestLamp
IOController::DIOStateList::iterator ditTestLamp
PassiveTimer ptHeartBeat
UniSetTypes::ObjectId sidHeartBeat
int maxHeartBeat
IOController::AIOStateList::iterator aitHeartBeat
bool force
bool force_out
int smReadyTimeout
int defCardNum
int maxCardNum
UniSetTypes::uniset_mutex iopollMutex
bool activated
bool readconf_ok
int activateTimeout
UniSetTypes::ObjectId sidTestSMReady
bool term
UniSetTypes::ObjectId testMode_as
IOController::AIOStateList::iterator aitTestMode
long testmode
long prev_testmode

Подробное описание

Процесс работы с картами в/в. Задачи:


Перечисления

Элементы перечислений:
tmNone 

тестовый режим отключён

tmOffPoll 

отключить опрос

tmConfigEnable 

специальный режим, в соответсвии с настройкой 'enable_testmode'

tmConfigDisable 

специальный режим, в соответсвии с настройкой 'disable_testmode'

tmOnlyInputs 

включены только входы

tmOnlyOutputs 

включены только выходы

tmNone 

тестовый режим отключён

tmOffPoll 

отключить опрос

tmConfigEnable 

специальный режим, в соответсвии с настройкой 'enable_testmode'

tmConfigDisable 

специальный режим, в соответсвии с настройкой 'disable_testmode'

tmOnlyInputs 

включены только входы

tmOnlyOutputs 

включены только выходы

Элементы перечислений:
tmNone 

тестовый режим отключён

tmOffPoll 

отключить опрос

tmConfigEnable 

специальный режим, в соответсвии с настройкой 'enable_testmode'

tmConfigDisable 

специальный режим, в соответсвии с настройкой 'disable_testmode'

tmOnlyInputs 

включены только входы

tmOnlyOutputs 

включены только выходы

tmNone 

тестовый режим отключён

tmOffPoll 

отключить опрос

tmConfigEnable 

специальный режим, в соответсвии с настройкой 'enable_testmode'

tmConfigDisable 

специальный режим, в соответсвии с настройкой 'disable_testmode'

tmOnlyInputs 

включены только входы

tmOnlyOutputs 

включены только выходы


Методы

bool IOControl::activateObject ( ) [protected, virtual]

Активизация объекта (переопределяется для необходимых действий после активизации)

Переопределяет метод предка UniSetObject.

virtual bool IOControl::activateObject ( ) [protected, virtual]

Активизация объекта (переопределяется для необходимых действий после активизации)

Переопределяет метод предка UniSetObject.

void IOControl::help_print ( int  argc,
const char *const *  argv 
) [static]

глобальная функция для вывода help-а

static void IOControl::help_print ( int  argc,
const char *const *  argv 
) [static]

глобальная функция для вывода help-а

IOControl * IOControl::init_iocontrol ( int  argc,
const char *const *  argv,
UniSetTypes::ObjectId  icID,
SharedMemory ic = 0,
const std::string  prefix = "io" 
) [static]

глобальная функция для инициализации объекта

Перекрестные ссылки UniSetTypes::conf, UniSetTypes::DefaultObjectId, UniSetTypes::Configuration::getArgParam() и UniSetTypes::Configuration::getArgPInt().

static IOControl* IOControl::init_iocontrol ( int  argc,
const char *const *  argv,
UniSetTypes::ObjectId  icID,
SharedMemory ic = 0,
const std::string  prefix = "io" 
) [static]

глобальная функция для инициализации объекта

void IOControl::iopoll ( ) [protected]

опрос карт в/в

Перекрестные ссылки force, iomap, pmap и tmOffPoll.

void IOControl::iopoll ( ) [protected]

опрос карт в/в

void IOControl::processingMessage ( UniSetTypes::VoidMessage msg) [protected, virtual]

обработка приходящих сообщений

Переопределяет метод предка UniSetObject.

virtual void IOControl::processingMessage ( UniSetTypes::VoidMessage msg) [protected, virtual]

обработка приходящих сообщений

Переопределяет метод предка UniSetObject.

void IOControl::sigterm ( int  signo) [protected, virtual]

Функция вызываемая при приходе сигнала завершения или прерывания процесса. Переопределив ее можно выполнять специфичные для процесса действия по обработке сигнала. Например переход в безопасное состояние.

Предупреждения:
В обработчике сигналов ЗАПРЕЩЕНО вызывать функции подобные exit(..), abort()!!!!

Переопределяет метод предка UniSetObject.

Перекрестные ссылки cards и iomap.

virtual void IOControl::sigterm ( int  signo) [protected, virtual]

Функция вызываемая при приходе сигнала завершения или прерывания процесса. Переопределив ее можно выполнять специфичные для процесса действия по обработке сигнала. Например переход в безопасное состояние.

Предупреждения:
В обработчике сигналов ЗАПРЕЩЕНО вызывать функции подобные exit(..), abort()!!!!

Переопределяет метод предка UniSetObject.


Данные класса

список карт - массив созданных ComediInterface

Используется в sigterm().

xmlNode * IOControl::cnode [protected]

xml-узел в настроечном файле

int IOControl::defCardNum [protected]

номер карты по умолчанию

bool IOControl::force [protected]

флаг, означающий, что надо сохранять в SM, даже если значение не менялось

Используется в iopoll().

bool IOControl::force_out [protected]

флаг, включающий принудительное чтения выходов

IOMap IOControl::iomap [protected]

список входов/выходов

Используется в iopoll() и sigterm().

максимально разрешённый номер для карты

unsigned int IOControl::maxItem [protected]

количество элементов (используется на момент инициализации)

PIOMap IOControl::pmap [protected]

список приоритетных входов/выходов

Используется в iopoll().

int IOControl::polltime [protected]

переодичность обновления данных (опроса карт в/в), [мсек]

int IOControl::smReadyTimeout [protected]

время ожидания готовности SM к работе, мсек

универсальный интерфейс для работы с другими процессами

Переопределяет метод предка UniSetObject.


Объявления и описания членов классов находятся в файлах: