FEDRA emulsion software from the OPERA Collaboration
EdbScanClientPav Class Reference

remote scanning for PAVICOM More...

#include <EdbScanClientPav.h>

Inheritance diagram for EdbScanClientPav:
Collaboration diagram for EdbScanClientPav:

Public Member Functions

virtual void AsyncScanAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname)
 N/A, not used ever. More...
 
virtual void AsyncScanPreloadAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)
 
virtual void AsyncStartScan ()
 
virtual int AsyncWaitForScanResult ()
 
 EdbScanClientPav ()
 
virtual int LoadPlate (int BRICK, int PLATE, const char *mapext, int nAttempts=1)
 
virtual void Print ()
 
virtual int ScanAreas (ScanType st, int id[4], EdbPattern &areas, EdbRun *run, const char *options="")
 
virtual bool ScanFromPrediction (int id1, int id2, int id3, int id4, float dx, float dy)
 
virtual bool ServerCreatesTarget ()
 
virtual void SetClusterThresholds (int TOP, int BOT)
 
virtual int SetFragmentSize (int X, int Y)
 converted to whole region for cont.mode More...
 
virtual void SetOdysseyThresholds (int itop, int ibottom, int size, int TOP, int BOT)
 
virtual void SetParameter (const char *Object, const char *Parameter, const char *Value)
 convert for sysal names? More...
 
void SetPathLib (const char *lib_)
 
void SetPathName (const char *name_)
 
virtual int UnloadPlate ()
 N/A. More...
 
virtual ~EdbScanClientPav ()
 
- Public Member Functions inherited from EdbScanClientCommon
virtual int AddRWC_ (EdbRun *run, char *rwcname, int bAddRWD=true, const char *options="")
 
virtual void AsyncScanAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname)=0
 
virtual void AsyncScanPreloadAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)=0
 
virtual int AsyncWaitForScanResult ()=0
 
void CloseSocket ()
 
virtual int ConvertAreas (int id[4], EdbPattern &areas, EdbRun &run, const char *options="")
 
 EdbScanClientCommon ()
 
const char * GetCmd ()
 
int GetMaxAttempts ()
 
int GetMaxFails ()
 
const char * GetMess ()
 
const char * GetMess1 ()
 
float GetNXView ()
 
float GetNYView ()
 
int GetPort ()
 
const char * GetProcPthServer ()
 
const char * GetProcTgtServer ()
 
const char * GetRawDirClient ()
 
const char * GetRawDirServer ()
 
const char * GetServer ()
 
const char * GetServerCreatedRunName ()
 
float GetXstep ()
 
float GetYstep ()
 
virtual int InitializeSocket ()
 
virtual int LoadPlate (int BRICK, int PLATE, const char *mapext, int nAttempts=1)=0
 
virtual void Print ()=0
 
virtual int ScanAreas (ScanType st, int id[4], EdbPattern &areas, EdbRun *run, const char *options="")=0
 
virtual int ScanPreloadAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)
 
virtual bool ServerCreatesTarget ()=0
 
virtual void SetClusterThresholds (int TOP, int BOT)=0
 
void SetCmd (const char *cmd_)
 
virtual int SetFragmentSize (int X, int Y)=0
 
void SetMaxAttempts (int attempts_)
 
void SetMaxFails (int fails_)
 
void SetMess (const char *mess_)
 
void SetMess1 (const char *mess_)
 
void SetNXview (float nxview_)
 
void SetNYview (float nyview_)
 
virtual void SetOdysseyThresholds (int itop, int ibottom, int size, int TOP, int BOT)=0
 
virtual void SetParameter (const char *Object, const char *Parameter, const char *Value)=0
 
void SetPort (int port_)
 
void SetProcPthServer (const char *prcpthserver_)
 
void SetProcTgtServer (const char *prctgtserver_)
 
void SetRawDirClient (const char *rawdirclient_)
 
void SetRawDirServer (const char *rawdirserver_)
 
void SetServer (const char *server_)
 
void SetXstep (float xstep_)
 
void SetYstep (float ystep_)
 
virtual Short_t ShortBrick (Int_t brick)
 
virtual int UnloadPlate ()=0
 
virtual ~EdbScanClientCommon ()
 
- Public Member Functions inherited from EdbScanClientBase
virtual int AddRWC_ (EdbRun *run, char *rwcname, int bAddRWD=true, const char *options="")=0
 
virtual void AsyncScanAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname)=0
 
virtual void AsyncScanPreloadAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)=0
 
virtual int AsyncWaitForScanResult ()=0
 
virtual int ConvertAreas (int id[4], EdbPattern &areas, EdbRun &run, const char *options="")=0
 
 EdbScanClientBase ()
 
virtual int InitializeSocket ()=0
 
virtual int LoadPlate (int BRICK, int PLATE, const char *mapext, int nAttempts=1)=0
 
virtual void Print ()=0
 
virtual int ScanAreas (ScanType st, int id[4], EdbPattern &areas, EdbRun *run, const char *options="")=0
 
virtual int ScanPreloadAreaS (int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)=0
 
virtual void SetClusterThresholds (int TOP, int BOT)=0
 
virtual int SetFragmentSize (int X, int Y)=0
 
virtual void SetOdysseyThresholds (int itop, int ibottom, int size, int TOP, int BOT)=0
 
virtual void SetParameter (const char *Object, const char *Parameter, const char *Value)=0
 
virtual Short_t ShortBrick (Int_t brick)=0
 
virtual int UnloadPlate ()=0
 
virtual ~EdbScanClientBase ()
 

Protected Member Functions

void SetServerTarget ()
 

Protected Attributes

bool m_createdTarget
 
std::vector< uint8m_inbuf
 
uint32 m_insize
 
MessageManager m_mm
 
MessageReader m_mr
 
std::string m_pathLib
 
std::string m_pathName
 
std::string m_predPathName
 
bool m_scanningStarted
 
- Protected Attributes inherited from EdbScanClientCommon
char eCMD [CMD_LEN]
 
int eMAXFAILS
 
int eMAXSCANATTEMPTS
 
char eMess [CMD_LEN]
 
char eMess1 [CMD_LEN]
 
float eNXview
 
float eNYview
 
int ePORT
 
TString eProcPthServer
 
TString eProcTgtServer
 
TString eRawDirClient
 
TString eRawDirServer
 
TString eServer
 
TString eServerCreatedRunName
 
TSocket * eSock
 
float eXstep
 
float eYstep
 

Additional Inherited Members

- Public Types inherited from EdbScanClientBase
enum  ScanType { stPred , stVolume }
 

Detailed Description

remote scanning for PAVICOM

Constructor & Destructor Documentation

◆ EdbScanClientPav()

EdbScanClientPav::EdbScanClientPav ( )
inline
11 :m_pathLib("OpBTPath.pth"), m_pathName("Volume_Scan"), m_predPathName("Prediction_Scan"), m_scanningStarted(false), m_createdTarget(false)
12 {
14 };
std::string m_pathName
Definition: EdbScanClientPav.h:51
std::string m_pathLib
Definition: EdbScanClientPav.h:50
std::string m_predPathName
Definition: EdbScanClientPav.h:52
bool m_scanningStarted
Definition: EdbScanClientPav.h:53
MessageManager m_mm
Definition: EdbScanClientPav.h:45
bool m_createdTarget
Definition: EdbScanClientPav.h:54
void CreateMessage()
Definition: MessageManager.cpp:10

◆ ~EdbScanClientPav()

virtual EdbScanClientPav::~EdbScanClientPav ( )
inlinevirtual
15{};

Member Function Documentation

◆ AsyncScanAreaS()

void EdbScanClientPav::AsyncScanAreaS ( int  id1,
int  id2,
int  id3,
int  id4,
float  x1,
float  x2,
float  y1,
float  y2,
const char *  fname 
)
virtual

N/A, not used ever.

Implements EdbScanClientCommon.

126{
127 printf("AsyncScanAreaS: not implemented yet, use AsyncScanPreloadAreaS\n");
128}

◆ AsyncScanPreloadAreaS()

void EdbScanClientPav::AsyncScanPreloadAreaS ( int  id1,
int  id2,
int  id3,
int  id4,
float  x1,
float  x2,
float  y1,
float  y2,
const char *  fname,
float  x1n,
float  x2n,
float  y1n,
float  y2n 
)
virtual

Implements EdbScanClientCommon.

134{
135 if(!eSock)
137 if(!eSock)
138 return;
139
140
141 char area[100];
142 sprintf(area, "%f %f %f %f", x1, y1, x2, y2); // here goes xmin, ymin, xmax, ymax
143 m_mm.AddSetPathParamsNode(m_pathLib.c_str(), m_pathName.c_str(), "area", area, NULL_TRM);
144
146
147 m_mm.AddStartNode(m_pathLib.c_str(), m_pathName.c_str(), "");
148 m_mm.FillBuff();
149
151}
#define NULL_TRM
Definition: MessageManager.h:11
virtual int InitializeSocket()
Definition: EdbScanClientBase.cxx:49
TSocket * eSock
Definition: EdbScanClientBase.h:58
virtual void AsyncStartScan()
Definition: EdbScanClientPav.cxx:185
void SetServerTarget()
Definition: EdbScanClientPav.cxx:284
void FillBuff()
Definition: MessageManager.cpp:124
void AddStartNode(const char *lib_, const char *path_, const char *comment_)
Definition: MessageManager.cpp:25
void AddSetPathParamsNode(const char *lib_, const char *path_,...)
Definition: MessageManager.cpp:100

◆ AsyncStartScan()

void EdbScanClientPav::AsyncStartScan ( )
virtual
186{
187 uint32 len = m_mm.GetBufSize();
188
189 int res;
190 if(eSock && eSock->IsValid()){
191 eSock->SendRaw(&len, sizeof(len));
192 eSock->SendRaw(m_mm.GetBuf(), len);
194
195 int recvBytes = eSock->RecvRaw(&m_insize, sizeof(m_insize));
196 if(recvBytes<=0){
197 CloseSocket();
198 return;
199 }
200 if(m_inbuf.size()<m_insize)
201 m_inbuf.resize(m_insize);
202 recvBytes = eSock->RecvRaw(&m_inbuf[0], m_insize);
203 if(recvBytes<=0){
204 CloseSocket();
205 return;
206 }
207 if(m_insize>0 && m_inbuf.size()){
208 printf("msg='%s'\n", &m_inbuf[8]);
209 bool res1 = m_mr.Load(&m_inbuf[0], m_insize);
210 if(!res1){
211 CloseSocket();
212 return;
213 }
214 m_mr.Process();
215 }
216
217 };
218
219 std::string startkey = PAVPROT_NODE_START;
220 startkey += "R";
221 int startcode;
222 const char *startstr = m_mr.GetValueForKey(startkey).c_str();
223 res = sscanf(startstr, "%d", &startcode);
224 if(!strlen(startstr))
225 startcode = PAVPROT_OK;
226 else if(res != 1){
227 printf("bad server response, stopping\n");
228 return;
229 };
230 switch(startcode){
231 case PAVPROT_OK:
232 printf("scanning started, waiting it to finish...\n");
233 m_scanningStarted = true;
234 break;
235
236 case PAVPROT_BUSY:
237 printf("Scanning not started: server is busy\n");
238 m_scanningStarted = false;
239 break;
240
241 case PAVPROT_ERROR:
242 default:
243 printf("scanning not started, some error occurred\n");
244 m_scanningStarted = false;
245 break;
246
247 }
248}
UInt_t uint32
Definition: PAVProtocolDef.h:68
void CloseSocket()
Definition: EdbScanClientBase.cxx:41
uint32 m_insize
Definition: EdbScanClientPav.h:48
MessageReader m_mr
Definition: EdbScanClientPav.h:46
std::vector< uint8 > m_inbuf
Definition: EdbScanClientPav.h:49
uint8 * GetBuf()
Definition: MessageManager.h:44
uint32 GetBufSize()
Definition: MessageManager.h:45
std::string GetValueForKey(const char *key_)
Definition: MessageReader.h:38
void Process()
Definition: MessageReader.cpp:65
bool Load(uint8 *buf_, uint32 size_)
Definition: MessageReader.cpp:3

◆ AsyncWaitForScanResult()

int EdbScanClientPav::AsyncWaitForScanResult ( )
virtual

Implements EdbScanClientCommon.

251{
253 return 0;
254 if(eSock) if(eSock->IsValid()){
255 int recvBytes = eSock->RecvRaw(&m_insize, sizeof(m_insize));
256 if(recvBytes<=0){
257 CloseSocket();
258 return 0;
259 }
260
261 if(m_inbuf.size()<m_insize)
262 m_inbuf.resize(m_insize);
263 recvBytes = eSock->RecvRaw(&m_inbuf[0], m_insize);
264 if(recvBytes<=0){
265 CloseSocket();
266 return 0;
267 }
268
269 if(m_insize>0 && m_inbuf.size()){
270 printf("msg='%s'\n", &m_inbuf[8]);
271 bool res = m_mr.Load(&m_inbuf[0], m_insize);
272 if(!res){
273 CloseSocket();
274 return 0;
275 }
276 m_mr.Process();
277 }
278 };
279 m_scanningStarted = false;
280
281 return 1;
282}

◆ LoadPlate()

int EdbScanClientPav::LoadPlate ( int  BRICK,
int  PLATE,
const char *  mapext,
int  nAttempts = 1 
)
virtual

Implements EdbScanClientCommon.

35{
36 m_mm.AddMarksNode(BRICK, PLATE, mapext);
37 return 1;
38}
void AddMarksNode(int brick_, int plate_, const char *mapext_)
Definition: MessageManager.cpp:34
int PLATE
Definition: shower_btr.C:18
Definition: RecDispMC.C:95

◆ Print()

virtual void EdbScanClientPav::Print ( )
virtual

Implements EdbScanClientCommon.

◆ ScanAreas()

int EdbScanClientPav::ScanAreas ( EdbScanClientBase::ScanType  st,
int  id[4],
EdbPattern areas,
EdbRun run,
const char *  options = "" 
)
virtual

this function scans the FIRST area from the list. Saving is done by server-side
for propper interaction the run filename should be set in EdbScanProc::SetServerRunName fn
returns 1 if scan was successful

Implements EdbScanClientCommon.

73{
77
78 int n = areas.N();
79 printf("ScanAreas: %d \n",n);
80 if(n == 0){
81 printf("Nothing to scan.\n");
82 return 0;
83 }
84 int scanned=0, failed=0;
85 EdbSegP *s = 0;
86 char str[256];
87 if(st == stVolume){
88 if(n!=1)
89 printf("WARNING! Only first prediction is scanned in Volume mode");
90 s = areas.GetSegment(0);
91 printf("ScanAreas: scan progress: 0 out of 1\n");
92 sprintf(str,"%s/raw.%d.%d.%d.%d",eRawDirServer.Data(),ShortBrick(id[0]), id[1], id[2], s->ID());
93 while( !ScanPreloadAreaS( id[0], id[1], id[2], s->ID(),
94 s->X()-s->SX(), s->X()+s->SX(), s->Y()-s->SY(), s->Y()+s->SY(),
95 str,s->X()-s->SX(), s->X()+s->SX(), s->Y()-s->SY(), s->Y()+s->SY() ) && failed < eMAXFAILS)
96 failed++;
97 if(failed >= eMAXFAILS)
98 printf("EdbScanClient::ScanAreas: ERROR!!! too many failures - stop scanning!\n");
99 else
100 scanned = 1;
101 }else{
102 s = areas.GetSegment(0);
103 float dx = s->SX(), dy = s->SY();
104 for(int i=1; i<n; i++){
105 s = areas.GetSegment(1);
106 if(s->SX() > dx)
107 dx = s->SX();
108 if(s->SY() > dy)
109 dy = s->SY();
110 }
111 while( !ScanFromPrediction( id[0], id[1], id[2], id[3], dx, dy) && failed < eMAXFAILS)
112 failed++;
113 if(failed >= eMAXFAILS)
114 printf("EdbScanClient::ScanAreas: ERROR!!! too many failures - stop scanning!\n");
115 else
116 scanned = n;
117 }
118
119 return scanned;
120}
@ stVolume
Definition: EdbScanClientBase.h:17
virtual int ScanPreloadAreaS(int id1, int id2, int id3, int id4, float x1, float x2, float y1, float y2, const char *fname, float x1n, float x2n, float y1n, float y2n)
Definition: EdbScanClientBase.cxx:62
virtual Short_t ShortBrick(Int_t brick)
Definition: EdbScanClientBase.h:94
int eMAXFAILS
Definition: EdbScanClientBase.h:67
TString eRawDirServer
Definition: EdbScanClientBase.h:71
virtual bool ScanFromPrediction(int id1, int id2, int id3, int id4, float dx, float dy)
Definition: EdbScanClientPav.cxx:154
Definition: EdbSegP.h:21
Int_t N() const
Definition: EdbPattern.h:86
EdbSegP * GetSegment(int i) const
Definition: EdbPattern.h:66
s
Definition: check_shower.C:55

◆ ScanFromPrediction()

bool EdbScanClientPav::ScanFromPrediction ( int  id1,
int  id2,
int  id3,
int  id4,
float  dx,
float  dy 
)
virtual
154 {
155 if(!eSock)
157 if(!eSock)
158 return false;
159
160
161 char pars[200];
162 sprintf(pars, "%f %f", dx, dy);
163 m_mm.AddSetPathParamsNode(m_pathLib.c_str(), m_predPathName.c_str(), "pred_sigma", pars, NULL_TRM);
164
165 if(eProcPthServer.Length() != 0)//only if proc path is set, i.e. path to processing directory as seen from scanning srv
166 m_mm.AddSetPathParamsNode(m_pathLib.c_str(), m_predPathName.c_str(), "pred_list", eProcPthServer.Data(), NULL_TRM);
167
168 sprintf(pars, "%u %u %u %u", id1, id2, id3, id4);
169 m_mm.AddSetPathParamsNode(m_pathLib.c_str(), m_predPathName.c_str(), "pred_id", pars, NULL_TRM);
170
172
173 m_mm.AddStartNode(m_pathLib.c_str(), m_predPathName.c_str(), "");
174 m_mm.FillBuff();
175
177
179 return true;
180 else
181 return false;
182}
TString eProcPthServer
Definition: EdbScanClientBase.h:74
virtual int AsyncWaitForScanResult()
Definition: EdbScanClientPav.cxx:250

◆ ServerCreatesTarget()

virtual bool EdbScanClientPav::ServerCreatesTarget ( )
inlinevirtual

Implements EdbScanClientCommon.

39{ return m_createdTarget;};

◆ SetClusterThresholds()

void EdbScanClientPav::SetClusterThresholds ( int  TOP,
int  BOT 
)
virtual
  • default used

Implements EdbScanClientCommon.

52{
53 printf("Default values are used from PAVICOM config.\n");
54}

◆ SetFragmentSize()

int EdbScanClientPav::SetFragmentSize ( int  X,
int  Y 
)
virtual

converted to whole region for cont.mode

Implements EdbScanClientCommon.

67{
68 return 1;
69}

◆ SetOdysseyThresholds()

void EdbScanClientPav::SetOdysseyThresholds ( int  itop,
int  ibottom,
int  size,
int  TOP,
int  BOT 
)
virtual

Implements EdbScanClientCommon.

58{
59 char val[20];
60 sprintf(val, "%d %d", BOT, TOP);
61 printf("only TOP and BOT thresholds are used in PAVICOM.\n");
62 SetParameter("processor", "clz_thres", val);
63}
virtual void SetParameter(const char *Object, const char *Parameter, const char *Value)
convert for sysal names?
Definition: EdbScanClientPav.cxx:41
@ TOP
Definition: tlg2couples.C:36
@ BOT
Definition: tlg2couples.C:36

◆ SetParameter()

void EdbScanClientPav::SetParameter ( const char *  Object,
const char *  Parameter,
const char *  Value 
)
virtual

convert for sysal names?

Implements EdbScanClientCommon.

42{
43 if(!strcmp(Object, "VertigoScanner"))
44 return;
45 //prevent too many fake sysal stuff
46 printf("%s[%s]=%s\n", Object, Parameter, Value);
47 m_mm.AddSetModuleParamsNode(Object, Parameter, Value, NULL_TRM);
48}
void AddSetModuleParamsNode(const char *module_,...)
Definition: MessageManager.cpp:58

◆ SetPathLib()

void EdbScanClientPav::SetPathLib ( const char *  lib_)
inline
36{ m_pathLib=lib_; };

◆ SetPathName()

void EdbScanClientPav::SetPathName ( const char *  name_)
inline
37{ m_pathName=name_; };

◆ SetServerTarget()

void EdbScanClientPav::SetServerTarget ( )
protected
284 {
285 std::string path(eProcTgtServer.Data()); // /opera/ONLINE/b800000/p009/asd.root
286 if(eProcPthServer.Length() != 0){
287 m_mm.AddSetModuleParamsNode("processor", "clprc.output_file", path.c_str(), NULL_TRM);
288 }else{
289 m_createdTarget = false;
290 std::string spath = eRawDirServer.Data();
291 std::string cpath = eRawDirClient.Data();
292 char buf[500];
293 unsigned int tid=static_cast<unsigned int>(time(0));
294 sprintf(buf, "/tracks_%u.raw.root", tid);
295 spath += buf;
296 cpath += buf;
297
298 eServerCreatedRunName = cpath.c_str();
299 m_mm.AddSetModuleParamsNode("processor", "clprc.output_file", spath.c_str(), NULL_TRM);
300 printf("Server proc dir not set. Please set for speedup.\n");
301 return;
302 }
303
304 m_mm.AddGetModuleParamsNode("processor", "clprc.output_file", NULL_TRM);
305 m_mm.FillBuff();
306
307 uint32 len = m_mm.GetBufSize();
308
309 //int res;
310 if(eSock && eSock->IsValid()){
311 eSock->SendRaw(&len, sizeof(len));
312 eSock->SendRaw(m_mm.GetBuf(), len);
314
315 int recvBytes = eSock->RecvRaw(&m_insize, sizeof(m_insize));
316 if(recvBytes<=0){
317 CloseSocket();
318 return;
319 }
320 if(m_inbuf.size()<m_insize)
321 m_inbuf.resize(m_insize);
322 recvBytes = eSock->RecvRaw(&m_inbuf[0], m_insize);
323 if(recvBytes<=0){
324 CloseSocket();
325 return;
326 }
327 if(m_insize>0 && m_inbuf.size()){
328 printf("msg='%s'\n", &m_inbuf[8]);
329 bool res1 = m_mr.Load(&m_inbuf[0], m_insize);
330 if(!res1){
331 CloseSocket();
332 return;
333 }
334 m_mr.Process();
335 }
336 };
337
338 std::string key = PAVPROT_NODE_GMP;
339 key += "R.processor.clprc.output_file";
340 if(m_mr.GetValueForKey(key).length() != 0){
341 printf("Server creates target file.\n");
342 m_createdTarget = true;
343 }else{
344 m_createdTarget = false;
345 printf("Server doesn't create target file. Please update to speedup.\n");
346 }
347};
TString eProcTgtServer
Definition: EdbScanClientBase.h:73
TString eRawDirClient
Definition: EdbScanClientBase.h:72
TString eServerCreatedRunName
Definition: EdbScanClientBase.h:76
void AddGetModuleParamsNode(const char *module_,...)
Definition: MessageManager.cpp:42

◆ UnloadPlate()

int EdbScanClientPav::UnloadPlate ( )
virtual

N/A.

Implements EdbScanClientCommon.

28{
29 printf("UnloadPlate: not implemented yet.\n");
30 return 1;
31}

Member Data Documentation

◆ m_createdTarget

bool EdbScanClientPav::m_createdTarget
protected

◆ m_inbuf

std::vector<uint8> EdbScanClientPav::m_inbuf
protected

◆ m_insize

uint32 EdbScanClientPav::m_insize
protected

◆ m_mm

MessageManager EdbScanClientPav::m_mm
protected

◆ m_mr

MessageReader EdbScanClientPav::m_mr
protected

◆ m_pathLib

std::string EdbScanClientPav::m_pathLib
protected

◆ m_pathName

std::string EdbScanClientPav::m_pathName
protected

◆ m_predPathName

std::string EdbScanClientPav::m_predPathName
protected

◆ m_scanningStarted

bool EdbScanClientPav::m_scanningStarted
protected

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