FACT++  1.0
void DimCurrentInfo::subscribe ( char *  name,
int  time,
void *  nolink,
int  nolinksize 
)
private

Definition at line 387 of file diccpp.cxx.

References data_user_routine(), dic_info_service(), DimInfo::itsData, DimInfo::itsDataSize, DimInfo::itsName, DimInfo::itsNolinkBuf, DimInfo::itsNolinkSize, DimInfo::itsSize, ONCE_ONLY, and time.

388 {
389 
390  int timeout;
391 
392 // itsTagId = 0;
393 // itsId = 0;
394  itsData = 0;
395 // itsFormat = 0;
396 // itsHandler = handler;
397  itsDataSize = 0;
398  itsSize = 0;
399  itsNolinkBuf = 0;
400  itsNolinkSize = 0;
401  itsName = 0;
402  if(!name)
403  {
404  return;
405  }
406  itsName = new char[(int)strlen(name)+1];
407  strcpy(itsName,name);
408  itsNolinkBuf = nolink;
409  itsNolinkSize = nolinksize;
410  if(nolinksize > 0)
411  {
412  itsNolinkBuf = new char[nolinksize];
413  itsNolinkSize = nolinksize;
414  memcpy(itsNolinkBuf, nolink, (size_t)nolinksize);
415  }
416  if(!time)
417  timeout = 10;
418  else
419  timeout = time;
420  wakeUp = 0;
421 // itsTagId = id_get((void *)this, SRC_DIC);
422  dic_info_service(itsName,ONCE_ONLY,timeout, 0, 0,
423 // data_user_routine, itsTagId,
424  data_user_routine, (dim_long)this,
426 }
int wakeUp
Definition: dic.hxx:297
unsigned dic_info_service(char *serv_name, int req_type, int req_timeout, void *serv_address, int serv_size, void(*usr_routine)(), dim_long tag, void *fill_addr, int fill_size)
Definition: dic.c:601
static void data_user_routine(void *tagp, void *bufp, int *size)
Definition: diccpp.cxx:343
void * itsNolinkBuf
Definition: dic.hxx:346
char * itsName
Definition: dic.hxx:342
int itsDataSize
Definition: dic.hxx:294
int itsSize
Definition: dic.hxx:295
long dim_long
Definition: dim_common.h:57
Warning because the service this data corrsponds to might have been last updated longer ago than Local time
Definition: smartfact.txt:92
void * itsData
Definition: dic.hxx:293
#define ONCE_ONLY
Definition: dim_common.h:7
int itsNolinkSize
Definition: dic.hxx:347

+ Here is the call graph for this function: