Boolean RGHashTable :: ContainsReference (const RGPersistent* p) const { // contains pointer RGDList* list = SelectList (p); return list->ContainsReference (p); }
RGPersistent* RGHashTable :: RemoveAllReferences (const RGPersistent* p) { RGDList* list = SelectList (p); int NEntriesStart = list->Entries (); int NEntriesEnd; RGPersistent* q = list->RemoveAllReferences (p); NEntriesEnd = list->Entries (); NumberOfEntries -= (NEntriesStart - NEntriesEnd); return q; }
RGPersistent* RGHashTable :: RemoveReference (const RGPersistent* p) { RGDList* list = SelectList (p); RGPersistent* q = list->RemoveReference (p); if (q != NULL) NumberOfEntries--; return q; }
RGPersistent* RGHashTable :: Remove (const RGPersistent* target) { RGDList* list = SelectList (target); RGPersistent* q = list->Remove (target); if (q != NULL) NumberOfEntries--; return q; }
int main(int argc,char **argv) { int c; extern char *optarg; extern int optind; int errflg=0; int i; char test1[500],test2[500]; while ((c = getopt(argc, argv, "xvLEb:s:p:c:f:i:P:")) != EOF) switch (c) { case 'x': extendedoutput++; break; case 'v': verbose++; break; case 'L': liss2++; break; case 'E': ignoreeof++; break; case 'b': i = atoi(optarg); switch(i) { case 256: case 512: case 4096: seed_size = i; break; default: fprintf(stderr,"Block size must be 256, 512, or 4096\n"); errflg++; break; } break; case 'p': tel_port = atoi(optarg); break; case 's': select_file = strdup(optarg); break; case 'P': pidfile = strdup(optarg); break; case 'c': capture = strdup(optarg); break; case 'f': flushint = atoi(optarg); if (flushint<=5) { fprintf(stderr,"Flush interval must be >= 5 seconds\n"); errflg++; } break; case 'i': startint = atoi(optarg); if (startint<0) { fprintf(stderr,"Starting sequence must be >= 0\n"); errflg++; } break; case '?': errflg++; } if (capture) { sprintf(test1,capture,1); sprintf(test2,capture,9999); if (strcmp(test1,test2)==0) { fprintf(stderr,"You must specify capture masks with the %%d operator - like out%%d.seed\n"); errflg++; } } if (liss2) { printf("LISS2 server connections not supported yet\n"); errflg++; } if (extendedoutput) { printf("Extended (LISS2) mode not yet supported\n"); errflg++; } if (errflg) usage(argc,argv); if (pidfile) watchdog(pidfile); SelectInit(&dumproot); if (select_file) { SelectLoadup(&dumproot, select_file); if (verbose) SelectList(&dumproot); } for (; optind < argc; optind++) { ifil[num_files++] = strdup(argv[optind]); if (num_files+1>MAX_FILES) bombout(EXIT_ABORT,"Too many files - only supports %d",MAX_FILES); } if (num_files<=0) usage(argc,argv); if (num_files>1) usage(argc,argv); now = 0; while(1) { i = process_telemetry(ifil[0], tel_port); if (!ignoreeof) break; sleep(20); } exit(0); }
int RGHashTable :: OccurrencesOfReference (const RGPersistent* p) const { RGDList* list = SelectList (p); return list->OccurrencesOfReference (p); }
RGPersistent* RGHashTable :: FindReference (const RGPersistent* p) { RGDList* list = SelectList (p); return list->FindReference (p); }
RGPersistent* RGHashTable :: Insert (RGPersistent* p) { RGDList* list = SelectList (p); NumberOfEntries++; return list->Insert (p); }
RGPersistent* RGHashTable :: Find (const RGPersistent* target) const { RGDList* list = SelectList (target); return list->Find (target); }
Boolean RGHashTable :: Contains (const RGPersistent* p) const { RGDList* list = SelectList (p); return list->Contains (p); }
RGPersistent* RGHashTable :: Prepend (RGPersistent* p) { RGDList* list = SelectList (p); NumberOfEntries++; return list->Prepend (p); }
QStringList SqlCalls::SelectList(QString table, QString column, QString clausula, QSqlDatabase database, QString &error) { QStringList l; l << clausula; return SelectList(table, column, l, database, error); }