git-svn-id: svn://db.shs.com.ru/libs@378 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2018-05-12 09:57:00 +00:00
parent e62e5a0c95
commit 56e250c150
15 changed files with 512 additions and 374 deletions

View File

@@ -26,7 +26,7 @@ class CDCore: public PIObject
PIOBJECT(CDUtils::CDCore)
friend class __Core_Initializer__;
friend class CDSection;
friend class KInterface;
friend class Interface;
public:
static CDCore * instance();
@@ -39,11 +39,12 @@ public:
EVENT_HANDLER(void, K_Request);
EVENT_HANDLER2(void, K_DirectChange, PIDeque<int>, path, PIString, value);
void k_write(PIIODevice * d);
void k_read(PIIODevice * d);
void k_parse(PIIODevice * d);
void k_update(PIIODevice * d, UpdateModeFlags mode);
void k_calculate();
void cd_write (CDSection * cd, PIIODevice * d);
void cd_read (CDSection * cd, PIIODevice * d);
void cd_parse (CDSection * cd, PIIODevice * d);
void cd_update (CDSection * cd, PIIODevice * d, UpdateModeFlags mode);
void cd_calculate(CDSection * cd);
void cd_send (CDSection * cd, CDPacketType pt, bool direct = false);
void initApp();
void initPult();
void init(const PIString & configuration);
@@ -51,6 +52,8 @@ public:
bool inProgress() {return sendt.isRunning();}
CDSection & k() {return k_;}
CDSection * root(CDType::cdT cdt);
PIString typeLetter(CDType::cdT cdt);
static PIString pultConfig() {return PIString(pult_config);}
static PIString appConfig() {return PIString(app_config);}
@@ -63,16 +66,19 @@ private:
EVENT_HANDLER1(void, dtReceiveFinished, bool, ok);
EVENT_HANDLER(void, sendThread);
EVENT_HANDLER(void, xTimerTick);
void initRoot(CDSection & r);
void initRoot(CDSection * r);
PIByteArray makeHeader(CDPacketType type, int session_id = 0) const;
void sendDirect(PIByteArray & ba);
void sendThreaded(PIByteArray & ba);
void procReceivedPacket(PIByteArray & ba);
static const char app_config[], pult_config[];
PIConnection connection;
PIDataTransfer datatr;
PacketHeader wheader;
PIByteArray send_data;
PIThread sendt;
PITimer x_timer;
CDSection k_;
CDSection k_, x_, c_;
};