73 lines
1.5 KiB
C++
73 lines
1.5 KiB
C++
/*********************************************************************
|
|
*
|
|
* ÎÄ ¼þ: MemZone.h
|
|
*
|
|
* °æÈ¨ËùÓÐ: Shanghai Baosight Software Co., Ltd.
|
|
*
|
|
*********************************************************************/
|
|
#ifndef _H_COLLECT_ZONE_H
|
|
#define _H_COLLECT_ZONE_H
|
|
#include <Ice/BuiltinSequences.h>
|
|
#include <zlib/MemTrk.h>
|
|
#include <zlib/MemZone.h>
|
|
#include <glob/BinaryTele.h>
|
|
#include <zmtr/SignalAnalyze.h>
|
|
#include <glob/ProxyMag.h>
|
|
#include <zlib/MemVar.h>
|
|
|
|
using namespace baosight;
|
|
|
|
struct ADDR{
|
|
short mode;
|
|
short event;
|
|
short addr;
|
|
short addrbit;
|
|
};
|
|
class AD_MODE{
|
|
public:
|
|
static const short NORMAL = 0;
|
|
static const short UNKNOW = 1;
|
|
static const short BINARY = 2;
|
|
};
|
|
class CollectZone
|
|
{
|
|
public:
|
|
CollectZone(void);
|
|
|
|
public:
|
|
~CollectZone(void);
|
|
public:
|
|
|
|
int dispatch(int eventNo,const ::Ice::ByteSeq&);
|
|
void Insert(coatWt coatwt,int start,int end);
|
|
private:
|
|
|
|
int fdaacase(int eventNo,const ::Ice::ByteSeq&);
|
|
|
|
|
|
int cachecase(int eventNo,const ::Ice::ByteSeq&);
|
|
|
|
int telecase(int eventNo,const ::Ice::ByteSeq&);
|
|
int getTHData(string key);
|
|
private:
|
|
vector<CMemZone*> v_memzone;
|
|
BinaryTele* p_tele;
|
|
BinaryTele* p_btel;
|
|
CMemTable<PDI>* pt_pdi;
|
|
|
|
|
|
/*map<zone,vector<pos> > */;
|
|
map<string,vector<int> > v_zpos;
|
|
|
|
/*map<zone,vector<addr> >*/
|
|
// map<string,vector<string> > v_zaddr;
|
|
map<string,vector<ADDR> > v_zaddr;
|
|
|
|
vector<short> v_btel;
|
|
map<string,float>mp_th;
|
|
map<string,float>mp_PDIData;
|
|
/*map<zone,map<telid,vector<index>>>*/
|
|
// map<string,map<string,vector<int> > > v_zonetel;
|
|
};
|
|
#endif
|