#include "udanax.h"
Include dependency graph for spanf2.cxx:

Go to the source code of this file.
Functions | |
| bool | isinlinklist (typelinkset linkset, IStreamAddr *linkisaptr) |
| ??? | |
| typelink * | makelinkitem (Session *sess, IStreamAddr *linkisa) |
| ??? | |
| void | onlinklist (Session *sess, typelinkset *linksetptr, IStreamAddr *linkisaptr) |
| ??? | |
| void | intersectlinksets (Session *sess, typelinkset linkset1, typelinkset linkset2, typelinkset linkset3, typelinkset *linkset4ptr) |
| ??? | |
(to be defined)
Definition in file spanf2.cxx.
|
||||||||||||||||||||||||
|
??? (to be defined)
Definition at line 162 of file spanf2.cxx. References typeaddress::address, debug, fooitemset(), L, makelinkitem(), typeaddress::next, NULL, tumblereq(), and typelinkset. Referenced by findlinksfromtothreesp().
00163 : User's session context 00164 typelinkset linkset1, 00165 typelinkset linkset2, 00166 typelinkset linkset3, 00167 typelinkset *linkset4ptr) 00168 { 00169 typelinkset linkset4; 00170 typelinkset temp1 = NULL; 00171 typelinkset temp2; 00172 typelinkset temp3; 00173 bool olddebug = debug; 00174 00175 #ifndef DISTRIBUTION 00176 if (debug) { 00177 L("\nINTERSECTLINKSETS\n"); 00178 fooitemset("", (typeitem *) linkset1); 00179 fooitemset("", (typeitem *) linkset2); 00180 L("inter linkset1 = %x, linkset2 = %x, linkset3 = %x\n", (int) linkset1, (int) linkset2, (int) linkset3); 00181 } 00182 #endif 00183 00184 /* If only one linkset is non-null, then just use it */ 00185 if (linkset1 && !linkset2 && !linkset3) 00186 *linkset4ptr = linkset1; 00187 else if (!linkset1 && linkset2 && !linkset3) 00188 *linkset4ptr = linkset2; 00189 else if (!linkset1 && !linkset2 && linkset3) 00190 *linkset4ptr = linkset3; 00191 else 00192 *linkset4ptr = NULL; 00193 00194 if (*linkset4ptr) { 00195 #ifndef DISTRIBUTION 00196 if (debug) { 00197 L("*linkset4ptr = %x\n", (int) *linkset4ptr); 00198 } 00199 #endif 00200 debug = olddebug; 00201 return; 00202 } 00203 00204 /* At least two linksets aren't null */ 00205 /* If only two are, put them in temp1 and linkset2 */ 00206 if (linkset1) 00207 temp1 = linkset1; 00208 if (linkset1 && !linkset2 && linkset3) { 00209 linkset2 = linkset3; 00210 linkset3 = NULL; 00211 } else if (!linkset1 && linkset2 && linkset3) { 00212 temp1 = linkset3; 00213 linkset3 = NULL; 00214 } 00215 00216 #ifndef DISTRIBUTION 00217 if (debug) { 00218 L("temp1 = %x, linkset2 = %x, linkset3 = %x\n", (int) temp1, (int) linkset2, (int) linkset3); 00219 } 00220 #endif 00221 00222 if (!linkset3) { 00223 for (; temp1; temp1 = temp1->next) { 00224 for (temp2 = linkset2; temp2; temp2 = temp2->next) { 00225 if (tumblereq(&temp1->address, &temp2->address)) { 00226 linkset4 = makelinkitem(sess, &temp1->address); 00227 *linkset4ptr = linkset4; 00228 linkset4ptr = &linkset4->next; 00229 } 00230 } 00231 } 00232 } else { 00233 for (; temp1; temp1 = temp1->next) { 00234 for (temp2 = linkset2; temp2; temp2 = temp2->next) { 00235 for (temp3 = linkset3; temp3; temp3 = temp3->next) { 00236 if (tumblereq(&temp1->address, &temp2->address) 00237 && tumblereq(&temp2->address, &temp3->address)) { 00238 linkset4 = makelinkitem(sess, &temp1->address); 00239 *linkset4ptr = linkset4; 00240 linkset4ptr = &linkset4->next; 00241 } 00242 } 00243 } 00244 } 00245 } 00246 debug = olddebug; 00247 } |
|
||||||||||||
|
??? (to be defined) Definition at line 90 of file spanf2.cxx. References typeaddress::address, typeaddress::next, tumblereq(), and typelinkset. Referenced by finddocscontainingsp().
|
|
||||||||||||
|
??? (to be defined)
Definition at line 109 of file spanf2.cxx. References typeaddress::address, footumbler(), typeaddress::itemid, LINKID, movetumbler, typeaddress::next, NULL, and typelink. Referenced by intersectlinksets(), and onlinklist().
00110 : User's session context 00111 IStreamAddr *linkisa) 00112 { 00113 #ifndef DISTRIBUTION 00114 footumbler("makelinkitem", linkisa); 00115 #endif 00116 00117 typelink *link = new(sess) typelink; 00118 movetumbler(linkisa, &link->address); 00119 link->itemid = LINKID; 00120 link->next = NULL; 00121 return link; 00122 } |
|
||||||||||||||||
|
??? (to be defined)
Definition at line 132 of file spanf2.cxx. References typeaddress::address, makelinkitem(), typeaddress::next, NULL, tumblereq(), typelink, and typelinkset. Referenced by sporglset2linksetinrange().
00133 : User's session context 00134 typelinkset *linksetptr, 00135 IStreamAddr *linkisaptr) 00136 { 00137 typelink *linkset, *temp, *nextlink; 00138 00139 linkset = makelinkitem(sess, linkisaptr); 00140 00141 if (*linksetptr == NULL) { 00142 *linksetptr = linkset; 00143 return; 00144 } 00145 00146 for (temp = *linksetptr; (nextlink = temp->next) != 0; temp = nextlink) { 00147 if (tumblereq(&temp->address, linkisaptr)) 00148 return; 00149 } 00150 00151 temp->next = linkset; 00152 } |
1.3.4