Beispiel #1
0
 graph(word_t maxedges, word_t maxnodes, u32 maxsols, char *bytes) : visited(2*maxnodes) {
   MAXEDGES = maxedges;
   MAXNODES = maxnodes;
   MAXSOLS = maxsols;
   adjlist = new (bytes) word_t[2*MAXNODES]; // index into links array
   links   = new (bytes += sizeof(word_t[2*MAXNODES])) link[2*MAXEDGES];
   compressu = compressv = 0;
   sharedmem = true;
   sols    = new  proof[MAXSOLS];
   visited.clear();
 }
Beispiel #2
0
 graph(word_t maxedges, word_t maxnodes, u32 maxsols) : visited(2*maxnodes) {
   MAXEDGES = maxedges;
   MAXNODES = maxnodes;
   MAXSOLS = maxsols;
   adjlist = new word_t[2*MAXNODES]; // index into links array
   links   = new link[2*MAXEDGES];
   compressu = compressv = 0;
   sharedmem = false;
   sols    = new proof[MAXSOLS+1]; // extra one for current path
   visited.clear();
 }
Beispiel #3
0
 graph(word_t maxedges, word_t maxnodes, u32 maxsols, u32 compressbits) : visited(2*maxnodes) {
   MAXEDGES = maxedges;
   MAXNODES = maxnodes;
   MAXSOLS = maxsols;
   adjlist = new word_t[2*MAXNODES]; // index into links array
   links   = new link[2*MAXEDGES];
   compressu = new compressor<word_t>(EDGEBITS, compressbits);
   compressv = new compressor<word_t>(EDGEBITS, compressbits);
   sharedmem = false;
   sols    = new  proof[MAXSOLS];
   visited.clear();
 }