1 /* 2 * Copyright (C) 1998, 2000-2007, 2010, 2011, 2012, 2013 SINTEF ICT, 3 * Applied Mathematics, Norway. 4 * 5 * Contact information: E-mail: tor.dokken@sintef.no 6 * SINTEF ICT, Department of Applied Mathematics, 7 * P.O. Box 124 Blindern, 8 * 0314 Oslo, Norway. 9 * 10 * This file is part of SISL. 11 * 12 * SISL is free software: you can redistribute it and/or modify 13 * it under the terms of the GNU Affero General Public License as 14 * published by the Free Software Foundation, either version 3 of the 15 * License, or (at your option) any later version. 16 * 17 * SISL is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU Affero General Public License for more details. 21 * 22 * You should have received a copy of the GNU Affero General Public 23 * License along with SISL. If not, see 24 * <http://www.gnu.org/licenses/>. 25 * 26 * In accordance with Section 7(b) of the GNU Affero General Public 27 * License, a covered work must retain the producer line in every data 28 * file that is created or manipulated using SISL. 29 * 30 * Other Usage 31 * You can be released from the requirements of the license by purchasing 32 * a commercial license. Buying such a license is mandatory as soon as you 33 * develop commercial activities involving the SISL library without 34 * disclosing the source code of your own applications. 35 * 36 * This file may be used in accordance with the terms contained in a 37 * written agreement between you and SINTEF ICT. 38 */ 39 40 #ifndef SISL_INCLUDED 41 #define SISL_INCLUDED 42 43 44 /// \mainpage SISL Documentation 45 /// 46 /// SISL is a comprehensive NURBS library for the modeling and 47 /// interrogation of curves and surfaces. 48 49 50 51 /* 52 * Enable function prototypes for ANSI C and C++ 53 * ---------------------------------------------- 54 */ 55 56 #if defined(sgi) 57 #undef SISLNEEDPROTOTYPES 58 #define SISLNEEDPROTOTYPES 59 #endif 60 61 #if defined(__STDC__) || defined (c_plusplus) || defined (__cplusplus) || defined(__BORLANDC__) 62 #undef SISLNEEDPROTOTYPES 63 #define SISLNEEDPROTOTYPES 64 #endif 65 66 #ifdef __BORLANDC__ 67 # define GO_API __declspec(package) 68 #elif defined(MICROSOFT) || defined(_MSC_VER) 69 # if defined(__DLL__) || defined(_DLL) 70 # define GO_API __declspec(dllexport) 71 # else 72 # define GO_API __declspec(dllimport) 73 # endif // __DLL__ 74 #else 75 # define GO_API 76 #endif // __BORLANDC__ 77 78 typedef struct SISLdir 79 { 80 int igtpi; /* 0 - The direction of the surface or curve 81 is not greater than pi in any 82 parameter direction. 83 1 - The direction of the surface or curve 84 is greater than pi in the first 85 parameter direction. 86 2 - The direction of the surface is greater 87 than pi in the second parameter 88 direction. */ 89 double *ecoef; /* The coordinates to the center of the cone.*/ 90 double aang; /* The angle from the center whice describe the 91 cone. */ 92 double *esmooth; /* Coordinates of object after smoothing. */ 93 } SISLdir; 94 /* The following structure contains 3 different boxes. The 95 first box is the plain box given by the coefficients of the 96 object. The second box is expanded with the half of a given 97 tolerance. The third box is expanded with half the tolerance 98 in the inner and for the vertices at the edges/endpoints 99 a distance of half the tolerance is removed. The minimum and 100 maximum values of the boxes are given by the arrays 101 e2min[0] - e2min[2] and e2max[0] - e2max[2]. The tolerances used 102 when making the boxes are stored in etol[0] - etol[2]. etol[0] 103 will always be equal to zero. If a box is made, the pointers 104 belonging to this box points to arrays, otherwise they point 105 to SISL_NULL. */ 106 107 typedef struct SISLbox 108 { 109 double *emax; /* The minimum values to the boxes. */ 110 double *emin; /* The maximum values to the boxes. */ 111 int imin; /* The index of the min coeff (one-dim case) */ 112 int imax; /* The index of the max coeff (one-dim case) */ 113 114 double *e2max[3]; /* The minimum values dependant on tolerance.*/ 115 double *e2min[3]; /* The maximum values dependant on tolerance.*/ 116 double etol[3]; /* Tolerances of the boxes. */ 117 } SISLbox; 118 119 /* Information used in intersection functionality */ 120 enum /* SEGMENTATION_TYPE */ 121 { 122 NO_SEG_TYPE = 0, 123 TANGENTIAL_BELT_LEFT, 124 TANGENTIAL_BELT_RIGHT, 125 LIMITING_SEG 126 }; 127 128 enum /* SURFACE_TYPE */ 129 { 130 NO_SURFACE_TYPE = 0, 131 TANGENTIAL_BELT 132 }; 133 134 typedef struct SISLSegmentation 135 { 136 double *seg_val; 137 int *seg_type; /* SEGMENTATION_TYPE */ 138 int num_seg; 139 } SISLSegmentation; 140 141 /* This file will contain the definition of the structure SISLCurve which 142 will contain the description of a B-spline curve. */ 143 144 typedef struct SISLCurve 145 { 146 int ik; /* Order of curve. */ 147 int in; /* Number of vertices. */ 148 double *et; /* Pointer to the knotvector. */ 149 double *ecoef; /* Pointer to the array containing vertices. */ 150 double *rcoef; /*Pointer to the array of scaled vertices if 151 rational. */ 152 int ikind; /* Kind of curve 153 = 1 : Polynomial B-spline curve. 154 = 2 : Rational B-spline curve. 155 = 3 : Polynomial Bezier curve. 156 = 4 : Rational Bezier curve. */ 157 int idim; /* Dimension of the space in which the curve 158 lies. */ 159 int icopy; /* Indicates whether the arrays of the curve 160 are copied or referenced by creation of the 161 curve. 162 = 0 : Pointer set to input arrays. 163 = 1 : Copied. 164 = 2 : Pointer set to input arrays, 165 but are to be treated as copied. */ 166 SISLdir *pdir; /* Pointer to a structur to store curve 167 direction. */ 168 SISLbox *pbox; /* Pointer to a structur to store the 169 surrounded boxes. */ 170 int cuopen; /* Open/closed flag. */ 171 } SISLCurve; 172 173 /* This file will contain the definition of the structure SISLSurf which 174 contains the description of a tensor-product surface. */ 175 176 typedef struct SISLSurf 177 { 178 int ik1; /* Order of surface in first parameter 179 direction. */ 180 int ik2; /* Order of surface in second parameter 181 direction. */ 182 int in1; /* Number of vertices in first parameter 183 direction. */ 184 int in2; /* Number of vertices in second parameter 185 direction. */ 186 double *et1; /* Pointer to knotvector in first parameter 187 direction. */ 188 double *et2; /* Pointer to knotvector in second parameter 189 direction. */ 190 double *ecoef; /* Pointer to array of vertices of surface. */ 191 double *rcoef; /* Pointer to the array of scaled vertices 192 if surface is rational. */ 193 int ikind; /* Kind of surface 194 = 1 : Polynomial B-spline tensor-product 195 surface. 196 = 2 : Rational B-spline tensor-product 197 surface. 198 = 3 : Polynomial Bezier tensor-product 199 surface. 200 = 4 : Rational Bezier tensor-product 201 surface. */ 202 int idim; /* Dimension of the space in which the surface 203 lies. */ 204 int icopy; /* Indicates whether the arrays of the surface 205 are copied or referenced by creation of 206 the surface. 207 = 0 : Pointer set to input arrays. 208 = 1 : Copied. 209 = 2 : Pointer set to input arrays, 210 but are to be treated as copied. */ 211 SISLdir *pdir; /* Pointer to a structur to store surface 212 direction. */ 213 SISLbox *pbox; /* Pointer to a structur to store the 214 surrounded boxes. */ 215 int use_count; /* use count so that several tracks can share 216 surfaces, no internal use */ 217 int cuopen_1; /* Open/closed flag, 1. par directiion */ 218 int cuopen_2; /* Open/closed flag. 2. par direction */ 219 SISLSegmentation *seg1; /* Segmentation information for use in 220 intersection functionality, 1. par. dir. */ 221 SISLSegmentation *seg2; /* Segmentation information for use in 222 intersection functionality, 2. par. dir. */ 223 int sf_type; /* SURFACE_TYPE, Flag for special surface information */ 224 } SISLSurf; 225 226 /* This file contains the description of an intersection curve. 227 The curve is given by a number of points represented by the 228 parameter-values of the point in the objects involved in the 229 intersection. Pointers to the curve in the geometry space and 230 in the parameter planes of the objects might exist. */ 231 232 typedef struct SISLIntcurve 233 { 234 int ipoint; /* Number of points defining the curve. */ 235 int ipar1; /* Number of parameter directions of first 236 object. */ 237 int ipar2; /* Number of parameter directions of second 238 * object. */ 239 double *epar1; /* Pointer to the parameter-values of the 240 points 241 in the first object. */ 242 double *epar2; /* Pointer to the parameter-values of the 243 points 244 in the second object. If one of the objects 245 is an analytic curve or surface epar2 points 246 to nothing. */ 247 SISLCurve *pgeom; /* Pointer to the intersection curve in the 248 geometry space. If the curve is not 249 computed, pgeom points to nothing. */ 250 SISLCurve *ppar1; /* Pointer to the intersection curve in the 251 parameter plane of the first object. If 252 the curve is not computed, ppar1 points 253 to nothing. */ 254 SISLCurve *ppar2; /* Pointer to the intersection curve in the 255 parameter plane of the second object. If 256 the curve is not computed, ppar2 points 257 to nothing. */ 258 int itype; /* Kind of curve. 259 = 1 : Straight line. 260 = 2 : Closed loop. No singularities. 261 = 3 : Closed loop. One singularity. 262 Not used. 263 = 4 : Open curve. No singularity. 264 = 5 : Open curve. Singularity at the 265 beginning of the curve. 266 = 6 : Open curve. Singularity at the end 267 of the curve. 268 = 7 : Open curve. Singularity at the 269 beginning and end of the curve. 270 = 8 : An isolated singularity. Not used. 271 = 9 : The curve is exact, pgeom and either 272 ppar1 or ppar2 is set. */ 273 274 int pretop[4]; /* Pretopology */ 275 } SISLIntcurve; 276 277 /* Pretopology information. */ 278 279 enum 280 { 281 SI_RIGHT=1, SI_LEFT=2 282 }; 283 enum 284 { 285 SI_UNDEF, SI_IN, SI_OUT, SI_ON, SI_AT 286 }; 287 288 #define SISL_CRV_PERIODIC -1 289 #define SISL_CRV_OPEN 1 290 #define SISL_CRV_CLOSED 0 291 292 #define SISL_SURF_PERIODIC -1 293 #define SISL_SURF_OPEN 1 294 #define SISL_SURF_CLOSED 0 295 296 /* 297 * Required for C++ 2.0 and later version 298 * -------------------------------------- 299 */ 300 #if defined(__cplusplus) 301 extern "C" { 302 #endif 303 #if defined(SISLNEEDPROTOTYPES) 304 305 #ifndef CONSTRUCT 306 extern 307 #endif 308 SISLbox GO_API *newbox(int); 309 #ifndef CONSTRUCT 310 extern 311 #endif 312 SISLCurve GO_API *newCurve(int,int,double *,double *,int,int,int); 313 #ifndef CONSTRUCT 314 extern 315 #endif 316 SISLCurve GO_API *copyCurve(SISLCurve *); 317 #ifndef CONSTRUCT 318 extern 319 #endif 320 SISLdir GO_API *newdir(int); 321 #ifndef CONSTRUCT 322 extern 323 #endif 324 SISLIntcurve GO_API *newIntcurve(int,int,int,double *,double *,int); 325 #ifndef CONSTRUCT 326 extern 327 #endif 328 SISLSurf GO_API *newSurf(int,int,int,int,double *,double *,double *,int,int,int); 329 #ifndef CONSTRUCT 330 extern 331 #endif 332 SISLSurf GO_API *copySurface(SISLSurf *); 333 334 #ifndef DESTRUCT 335 extern 336 #endif 337 void GO_API freeCurve(SISLCurve *); 338 #ifndef DESTRUCT 339 extern 340 #endif 341 void GO_API freeIntcrvlist(SISLIntcurve **,int); 342 #ifndef DESTRUCT 343 extern 344 #endif 345 void GO_API freeIntcurve(SISLIntcurve *); 346 #ifndef DESTRUCT 347 extern 348 #endif 349 void GO_API freeSurf(SISLSurf *); 350 #ifndef S1001 351 extern 352 #endif 353 void GO_API s1001(SISLSurf *,double,double,double,double,SISLSurf **,int *); 354 #ifndef S1011 355 extern 356 #endif 357 void GO_API s1011(double [],double [],double [],double,int,SISLCurve **,int *); 358 #ifndef S1012 359 extern 360 #endif 361 void GO_API s1012(double [],double [],double [],double,int,int, 362 SISLCurve **,int *); 363 #ifndef S1013 364 extern 365 #endif 366 void GO_API s1013(SISLCurve *,double,double,double,double *,int *); 367 #ifndef S1014 368 extern 369 #endif 370 void GO_API s1014(SISLCurve *,double[],double,double,double[],double[],double, 371 double *,double *,double[],int *); 372 #ifndef S1015 373 extern 374 #endif 375 void GO_API s1015(SISLCurve *,SISLCurve *,double,double[],double[],double, 376 double *,double *,double[],int *); 377 #ifndef S1016 378 extern 379 #endif 380 void GO_API s1016(SISLCurve *,double[],double[],double,double[],double[], 381 double,double *,double *,double[],int *); 382 #ifndef S1017 383 extern 384 #endif 385 void GO_API s1017(SISLCurve *,SISLCurve **,double,int *); 386 #ifndef S1018 387 extern 388 #endif 389 void GO_API s1018(SISLCurve *,double [],int,SISLCurve **,int *); 390 #ifndef S1021 391 extern 392 #endif 393 void GO_API s1021(double [],double [],double,double [],double,SISLSurf **,int *); 394 #ifndef S1022 395 extern 396 #endif 397 void GO_API s1022(double [],double[],double,double [],double,double, 398 SISLSurf **,int *); 399 #ifndef S1023 400 extern 401 #endif 402 void GO_API s1023(double [],double [],double [],int,int,SISLSurf **,int *); 403 #ifndef S1024 404 extern 405 #endif 406 void GO_API s1024(double [],double [],double [],double,int,int,int, 407 SISLSurf **,int *); 408 #ifndef S1025 409 extern 410 #endif 411 void GO_API s1025(SISLSurf *,double [],int,double [],int,SISLSurf **,int *); 412 #ifndef S1221 413 extern 414 #endif 415 void GO_API s1221(SISLCurve *,int,double,int *,double [],int *); 416 #ifndef S1225 417 extern 418 #endif 419 void GO_API s1225(SISLCurve *,int,double,int *,double [],double [],double *,int *); 420 #ifndef S1226 421 extern 422 #endif 423 void GO_API s1226(SISLCurve *,int,double,int *,double [],double [],double *,int *); 424 #ifndef S1227 425 extern 426 #endif 427 void GO_API s1227(SISLCurve *,int,double,int *,double [],int *); 428 #ifndef S1233 429 extern 430 #endif 431 void GO_API s1233(SISLCurve *,double,double,SISLCurve **,int *); 432 #ifndef S1237 433 extern 434 #endif 435 void GO_API s1237(SISLSurf *,int,int,double,int *); 436 #ifndef S1238 437 extern 438 #endif 439 void GO_API s1238(SISLSurf *,SISLCurve *,int,int,double,double,int *); 440 #ifndef S1240 441 extern 442 #endif 443 void GO_API s1240(SISLCurve *,double,double *,int *); 444 #ifndef S1241 445 extern 446 #endif 447 void GO_API s1241(SISLCurve *,double [],int,double,double *,int *); 448 #ifndef S1243 449 extern 450 #endif 451 void GO_API s1243(SISLCurve *,double [],int,double,double[],double *, 452 double *,int *); 453 #ifndef S1302 454 extern 455 #endif 456 void GO_API s1302(SISLCurve *,double,double,double [],double [],SISLSurf **,int *); 457 #ifndef S1303 458 extern 459 #endif 460 void GO_API s1303(double [],double,double,double [],double [],int,SISLCurve **,int *); 461 #ifndef S1310 462 extern 463 #endif 464 void GO_API s1310(SISLSurf *,SISLSurf *,SISLIntcurve *,double,double,int,int,int *); 465 #ifndef S1314 466 extern 467 #endif 468 void GO_API s1314(SISLSurf *,double *,double *,int,double,double,double, 469 SISLIntcurve *,int,int,int *); 470 #ifndef S1315 471 extern 472 #endif 473 void GO_API s1315(SISLSurf *,double *,double,int,double,double,double, 474 SISLIntcurve *,int,int,int *); 475 #ifndef S1316 476 extern 477 #endif 478 void GO_API s1316(SISLSurf *,double *,double *,double,int,double,double,double, 479 SISLIntcurve *,int,int,int *); 480 #ifndef S1317 481 extern 482 #endif 483 void GO_API s1317(SISLSurf *,double *,double *,double *,int,double,double,double, 484 SISLIntcurve *,int,int,int *); 485 #ifndef S1318 486 extern 487 #endif 488 void GO_API s1318(SISLSurf *,double *,double *,double,double,int,double,double, 489 double,SISLIntcurve *,int,int,int *); 490 #ifndef S1319 491 extern 492 #endif 493 void GO_API s1319(SISLSurf *,double *,int,double,double,double,SISLIntcurve *, 494 int,int,int *); 495 #ifndef S1327 496 extern 497 #endif 498 void GO_API s1327(SISLCurve *,double [],double [],double [],int,SISLCurve **,int *); 499 #ifndef S1328 500 extern 501 #endif 502 void GO_API s1328(SISLSurf *,double [],double [],double [],int,SISLSurf **,int *); 503 #ifndef S1332 504 extern 505 #endif 506 void GO_API s1332(SISLCurve *,SISLCurve *,double,double [],SISLSurf **,int *); 507 #ifndef S1356 508 extern 509 #endif 510 void GO_API s1356(double [],int,int,int [],int,int,int,int,double, 511 double *,SISLCurve **,double **,int *,int *); 512 #ifndef S1357 513 extern 514 #endif 515 void GO_API s1357(double [],int,int,int [],double [],int,int,int,int,double, 516 double *,SISLCurve **,double **,int *,int *); 517 #ifndef S1360 518 extern 519 #endif 520 void GO_API s1360(SISLCurve *,double,double,double [],double,int,SISLCurve **,int *); 521 #ifndef S1363 522 extern 523 #endif 524 void GO_API s1363(SISLCurve *,double *,double *,int *); 525 #ifndef S1364 526 extern 527 #endif 528 void GO_API s1364(SISLCurve *,double,int *); 529 #ifndef S1365 530 extern 531 #endif 532 void GO_API s1365(SISLSurf *,double,double, double,int,SISLSurf **,int *); 533 #ifndef S1369 534 extern 535 #endif 536 void GO_API s1369(SISLSurf *,double [],double [],double,double,int,double,double, 537 int *,double **,int *,SISLIntcurve ***,int *); 538 #ifndef S1371 539 extern 540 #endif 541 void GO_API s1371(SISLCurve *,double [],double,int,double,double, 542 int *,double **,int *,SISLIntcurve ***,int *); 543 #ifndef S1372 544 extern 545 #endif 546 void GO_API s1372(SISLCurve *,double [],double [],double,int,double,double, 547 int *,double **,int *,SISLIntcurve ***,int *); 548 #ifndef S1373 549 extern 550 #endif 551 void GO_API s1373(SISLCurve *,double [],double [],double [],int,double,double, 552 int *,double **,int *,SISLIntcurve ***,int *); 553 #ifndef S1374 554 extern 555 #endif 556 void GO_API s1374(SISLCurve *,double [],int,double,double, 557 int *,double **,int *,SISLIntcurve ***,int *); 558 #ifndef S1375 559 extern 560 #endif 561 void GO_API s1375(SISLCurve *,double [],double [],double,double,int,double,double, 562 int *,double **,int *,SISLIntcurve ***,int *); 563 #ifndef S1379 564 extern 565 #endif 566 void GO_API s1379(double [],double [],double [],int,int,SISLCurve **,int *); 567 #ifndef S1380 568 extern 569 #endif 570 void GO_API s1380(double [],double [],int,int,int,SISLCurve **,int *); 571 #ifndef S1383 572 extern 573 #endif 574 void GO_API s1383(SISLSurf *,SISLCurve *,double,double,int,SISLCurve **, 575 SISLCurve **,SISLCurve **,int *); 576 #ifndef S1386 577 extern 578 #endif 579 void GO_API s1386(SISLSurf *,int,int,SISLSurf **,int *); 580 #ifndef S1387 581 extern 582 #endif 583 void GO_API s1387(SISLSurf *,int,int,SISLSurf **,int *); 584 #ifndef S1388 585 extern 586 #endif 587 void GO_API s1388(SISLSurf *,double *[],int *,int *,int *,int *); 588 #ifndef S1389 589 extern 590 #endif 591 void GO_API s1389(SISLCurve *,double *[],int *,int *,int *); 592 #ifndef S1390 593 extern 594 #endif 595 void GO_API s1390(SISLCurve *[],SISLSurf **,int [],int *); 596 #ifndef S1391 597 extern 598 #endif 599 void GO_API s1391(SISLCurve **,SISLSurf ***,int,int [],int *); 600 #ifndef S1401 601 extern 602 #endif 603 void GO_API s1401(SISLCurve *[],double [],SISLSurf **,int *); 604 #ifndef S1421 605 extern 606 #endif 607 void GO_API s1421(SISLSurf *,int,double [],int *,int *,double [],double [],int *); 608 #ifndef S1422 609 extern 610 #endif 611 void GO_API s1422(SISLSurf *,int,int,int,double [],int *,int *, 612 double [],double [],int *); 613 #ifndef S1424 614 extern 615 #endif 616 void GO_API s1424(SISLSurf *,int,int,double [],int *,int *,double [],int *); 617 #ifndef S1425 618 extern 619 #endif 620 void GO_API s1425(SISLSurf *,int,int,int,int,double [],int *,int *, 621 double [],int *); 622 #ifndef S1439 623 extern 624 #endif 625 void GO_API s1439(SISLSurf *,double,int,SISLCurve **,int *); 626 #ifndef S1440 627 extern 628 #endif 629 void GO_API s1440(SISLSurf *,SISLSurf **,int *); 630 #ifndef S1450 631 extern 632 #endif 633 void GO_API s1450(SISLSurf *,double,int *,int *,int *,int *,int *,int *,int *); 634 #ifndef S1451 635 extern 636 #endif 637 void GO_API s1451(SISLCurve *,double,int *,int *); 638 #ifndef S1501 639 extern 640 #endif 641 void GO_API s1501(SISLSurf *,double *,double *,double *,double,double,int, 642 double,double,double,SISLIntcurve *,int,int,int *); 643 #ifndef S1502 644 extern 645 #endif 646 void GO_API s1502(SISLCurve *,double [],double [],double [],double,double,int, 647 double,double,int *,double **,int *,SISLIntcurve ***,int *); 648 #ifndef S1503 649 extern 650 #endif 651 void GO_API s1503(SISLSurf *,double [],double [],double [],double,double,int, 652 double,double,int *,double **,int *,SISLIntcurve ***,int *); 653 #ifndef S1506 654 extern 655 #endif 656 void GO_API s1506(SISLSurf *,int,int,double *,int,double *,double [], 657 double [],int *); 658 #ifndef S1508 659 extern 660 #endif 661 void GO_API s1508(int,SISLCurve **,double[],SISLSurf **,int *); 662 #ifndef S1510 663 extern 664 #endif 665 void GO_API s1510(SISLSurf *,double [],int,double,double, 666 int *,double **,int *,SISLIntcurve ***,int *); 667 #ifndef S1511 668 extern 669 #endif 670 void GO_API s1511(SISLSurf *,double [],double [],int,double,double, 671 int *,double **,int *,SISLIntcurve ***,int *); 672 #ifndef S1514 673 extern 674 #endif 675 void GO_API s1514(SISLSurf *,double [],int,double,double,double,SISLIntcurve *, 676 int,int,int *); 677 #ifndef S1515 678 extern 679 #endif 680 void GO_API s1515(SISLSurf *,double [],double [],int,double,double,double, 681 SISLIntcurve *,int,int,int *); 682 #ifndef S1518 683 extern 684 #endif 685 void GO_API s1518(SISLSurf *surf, double point[], double dir[], double epsge, 686 double start[], double end[], double parin[], double parout[], 687 int *stat); 688 #ifndef S1522 689 extern 690 #endif 691 void GO_API s1522(double [],double [],double [],double,int,SISLCurve **,int *); 692 #ifndef S1529 693 extern 694 #endif 695 void GO_API s1529(double [],double [],double [],double [], 696 int,int,int,int,SISLSurf **,int *); 697 #ifndef S1530 698 extern 699 #endif 700 void GO_API s1530(double [],double [],double [],double [], double [],double [], 701 int ,int ,int , SISLSurf **,int *); 702 #ifndef S1534 703 extern 704 #endif 705 void GO_API s1534(double [],double [],double [],double [],int,int,int, 706 int,int,int,int,int,int,int,int,int,SISLSurf **,int *); 707 #ifndef S1535 708 extern 709 #endif 710 void GO_API s1535(double [],double [],double [],double [],int,int,int,double [], 711 double [],int,int,int,int,int,int,int,int,SISLSurf **,int *); 712 #ifndef S1536 713 extern 714 #endif 715 void GO_API s1536(double [],int,int,int,int,int,int,int,int,int,int, 716 int,int,SISLSurf **,int *); 717 #ifndef S1537 718 extern 719 #endif 720 void GO_API s1537(double [],int,int,int,double [],double [],int,int, 721 int,int,int,int,int,int,SISLSurf **,int *); 722 #ifndef S1538 723 extern 724 #endif 725 void GO_API s1538(int,SISLCurve *[],int [],double,int,int,int,SISLSurf **, 726 double **,int *); 727 #ifndef S1539 728 extern 729 #endif 730 void GO_API s1539(int,SISLCurve *[],int [],double [], double,int,int,int,SISLSurf **, 731 double **,int *); 732 #ifndef S1542 733 extern 734 #endif 735 void GO_API s1542(SISLCurve *, int, double *, double [], int *); 736 #ifndef S1600 737 extern 738 #endif 739 void GO_API s1600(SISLCurve *,double [],double [],int,SISLCurve **,int *); 740 #ifndef S1601 741 extern 742 #endif 743 void GO_API s1601(SISLSurf *,double [],double [],int,SISLSurf **,int *); 744 #ifndef S1602 745 extern 746 #endif 747 void GO_API s1602(double [],double [],int,int,double,double *,SISLCurve **,int *); 748 #ifndef S1603 749 extern 750 #endif 751 void GO_API s1603(SISLSurf *,double *,double *,double *,double *,int *); 752 #ifndef S1606 753 extern 754 #endif 755 void GO_API s1606(SISLCurve *,SISLCurve *,double,double [],double [], 756 int,int,int,SISLCurve **,int *); 757 #ifndef S1607 758 extern 759 #endif 760 void GO_API s1607(SISLCurve *,SISLCurve *,double,double,double,double,double, 761 int,int,int,SISLCurve **,int *); 762 #ifndef S1608 763 extern 764 #endif 765 void GO_API s1608(SISLCurve *,SISLCurve *,double,double [],double [],double [], 766 double [],int,int,int,SISLCurve **,double *,double *, 767 double *,double *,int *); 768 #ifndef S1609 769 extern 770 #endif 771 void GO_API s1609(SISLCurve *,SISLCurve *,double,double [],double [],double [], 772 double,double [],int,int,int,SISLCurve **,double *,double *, 773 double *,double *,int *); 774 #ifndef S1611 775 extern 776 #endif 777 void GO_API s1611(double [],int,int,double [],int,int,double,double, 778 double *,SISLCurve **,int *); 779 #ifndef S1613 780 extern 781 #endif 782 void GO_API s1613(SISLCurve *,double,double **,int *,int *); 783 #ifndef S1620 784 extern 785 #endif 786 void GO_API s1620(double epoint[],int inbpnt1, int inbpnt2, int ipar, 787 int iopen1, int iopen2, int ik1, int ik2, int idim, 788 SISLSurf **rs,int *jstat); 789 #ifndef S1630 790 extern 791 #endif 792 void GO_API s1630(double [],int,double,int,int,int,SISLCurve **,int *); 793 #ifndef S1706 794 extern 795 #endif 796 void GO_API s1706(SISLCurve *); 797 #ifndef S1710 798 extern 799 #endif 800 void GO_API s1710(SISLCurve *,double,SISLCurve **,SISLCurve **,int *); 801 #ifndef S1711 802 extern 803 #endif 804 void GO_API s1711(SISLSurf *,int,double,SISLSurf **,SISLSurf **,int *); 805 #ifndef S1712 806 extern 807 #endif 808 void GO_API s1712(SISLCurve *,double,double,SISLCurve **,int *); 809 #ifndef S1713 810 extern 811 #endif 812 void GO_API s1713(SISLCurve *,double,double,SISLCurve **,int *); 813 #ifndef S1714 814 extern 815 #endif 816 void GO_API s1714(SISLCurve *,double,double,SISLCurve **,SISLCurve **,int *); 817 #ifndef S1715 818 extern 819 #endif 820 void GO_API s1715(SISLCurve *,SISLCurve *,int,int,SISLCurve **,int *); 821 #ifndef S1716 822 extern 823 #endif 824 void GO_API s1716(SISLCurve *,SISLCurve *,double,SISLCurve **,int *); 825 #ifndef S1720 826 extern 827 #endif 828 void GO_API s1720(SISLCurve *,int,SISLCurve **,int *); 829 #ifndef S1730 830 extern 831 #endif 832 void GO_API s1730(SISLCurve *,SISLCurve **,int *); 833 #ifndef S1731 834 extern 835 #endif 836 void GO_API s1731(SISLSurf *,SISLSurf **,int *); 837 #ifndef S1732 838 extern 839 #endif 840 void GO_API s1732(SISLCurve *,int,double *,double *,double *,int *); 841 #ifndef S1733 842 extern 843 #endif 844 void GO_API s1733(SISLSurf *,int,int,double *,double *,double *,double *, 845 double *,int *); 846 #ifndef S1750 847 extern 848 #endif 849 void GO_API s1750(SISLCurve *,int,SISLCurve **,int *); 850 #ifndef S1774 851 extern 852 #endif 853 void GO_API s1774(SISLCurve *,double [],int,double,double,double,double,double *, 854 int *); 855 #ifndef S1775 856 extern 857 #endif 858 void GO_API s1775(SISLSurf *,double [],int,double,double [],double [],double [], 859 double [],int *); 860 #ifndef S1850 861 extern 862 #endif 863 void GO_API s1850(SISLCurve *,double [],double [],int,double,double, 864 int *,double **,int *,SISLIntcurve ***,int *); 865 #ifndef S1851 866 extern 867 #endif 868 void GO_API s1851(SISLSurf *,double [],double [],int,double,double, 869 int *,double **,int *,SISLIntcurve ***,int *); 870 #ifndef S1852 871 extern 872 #endif 873 void GO_API s1852(SISLSurf *,double [],double,int,double,double, 874 int *,double **, int *,SISLIntcurve ***,int *); 875 #ifndef S1853 876 extern 877 #endif 878 void GO_API s1853(SISLSurf *,double [],double [],double,int,double,double, 879 int *,double **,int *,SISLIntcurve ***,int *); 880 #ifndef S1854 881 extern 882 #endif 883 void GO_API s1854(SISLSurf *,double [],double [],double [],int,double,double, 884 int *,double **,int *,SISLIntcurve ***,int *); 885 #ifndef S1855 886 extern 887 #endif 888 void GO_API s1855(SISLSurf *,double [],double,double [],int,double,double, 889 int *,double **,int *,SISLIntcurve ***,int *); 890 #ifndef S1856 891 extern 892 #endif 893 void GO_API s1856(SISLSurf *,double [],double [],int,double,double, 894 int *,double **,int *,SISLIntcurve ***,int *); 895 #ifndef S1857 896 extern 897 #endif 898 void GO_API s1857(SISLCurve *,SISLCurve *,double,double, 899 int *,double **,double **,int *,SISLIntcurve ***,int *); 900 #ifndef S1858 901 extern 902 #endif 903 void GO_API s1858(SISLSurf *,SISLCurve *,double,double, 904 int *,double **,double **,int *,SISLIntcurve ***,int *); 905 #ifndef S1859 906 extern 907 #endif 908 void GO_API s1859(SISLSurf *,SISLSurf *,double,double, 909 int *,double **,double **,int *,SISLIntcurve ***,int *); 910 #ifndef S1860 911 extern 912 #endif 913 void GO_API s1860(SISLSurf *,double [],int,double,double, 914 int *,double **,int *,SISLIntcurve ***,int *); 915 #ifndef S1870 916 extern 917 #endif 918 void 919 s1870(SISLSurf *ps1, double *pt1, int idim, double aepsge, 920 int *jpt,double **gpar1,int *jcrv,SISLIntcurve ***wcurve,int *jstat); 921 #ifndef S1871 922 extern 923 #endif 924 void 925 s1871(SISLCurve *pc1, double *pt1, int idim, double aepsge, 926 int *jpt,double **gpar1,int *jcrv,SISLIntcurve ***wcurve,int *jstat); 927 #ifndef S1920 928 extern 929 #endif 930 void GO_API s1920(SISLCurve *,double [],int,double,double, 931 int *,double **,int *,SISLIntcurve ***,int *); 932 #ifndef S1921 933 extern 934 #endif 935 void GO_API s1921(SISLSurf *,double [],int,double,double, 936 int *,double **,int *,SISLIntcurve ***,int *); 937 #ifndef S1940 938 extern 939 #endif 940 void GO_API s1940(SISLCurve *oldcurve, double eps[], int startfix, int endfix, 941 int iopen, int itmax, SISLCurve **newcurve, double maxerr[], 942 int *stat); 943 #ifndef S1953 944 extern 945 #endif 946 void GO_API s1953(SISLCurve *,double [],int,double,double, 947 int *,double **,int *,SISLIntcurve ***,int *); 948 #ifndef S1954 949 extern 950 #endif 951 void GO_API s1954(SISLSurf *,double [],int,double,double, 952 int *,double **,int *,SISLIntcurve ***,int *); 953 #ifndef S1955 954 extern 955 #endif 956 void GO_API s1955(SISLCurve *,SISLCurve *,double,double, 957 int *,double **,double **,int *,SISLIntcurve ***,int *); 958 #ifndef S1957 959 extern 960 #endif 961 void GO_API s1957(SISLCurve *,double [],int,double,double,double *,double *,int *); 962 #ifndef S1958 963 extern 964 #endif 965 void GO_API s1958(SISLSurf *,double [],int,double,double,double [],double *,int *); 966 #ifndef S1961 967 extern 968 #endif 969 void GO_API s1961(double ep[],int im,int idim,int ipar,double epar[], 970 double eeps[],int ilend,int irend,int iopen,double afctol, 971 int itmax,int ik,SISLCurve **rc,double emxerr[], 972 int *jstat); 973 #ifndef S1962 974 extern 975 #endif 976 void GO_API s1962(double ep[],double ev[],int im,int idim,int ipar,double epar[], 977 double eeps[],int ilend,int irend,int iopen,int itmax, 978 SISLCurve **rc,double emxerr[],int *jstat); 979 #ifndef S1963 980 extern 981 #endif 982 void GO_API s1963(SISLCurve *pc,double eeps[],int ilend,int irend,int iopen, 983 int itmax, SISLCurve **rc,int *jstat); 984 #ifndef S1965 985 extern 986 #endif 987 void GO_API s1965(SISLSurf *oldsurf,double eps[],int edgefix[4],int iopen1, 988 int iopen2,double edgeps[],int opt,int itmax, 989 SISLSurf **newsurf,double maxerr[],int *stat); 990 #ifndef S1966 991 extern 992 #endif 993 void GO_API s1966(double ep[],int im1,int im2,int idim,int ipar,double epar1[], 994 double epar2[],double eeps[],int nend[],int iopen1,int iopen2, 995 double edgeps[],double afctol,int iopt,int itmax, 996 int ik1,int ik2,SISLSurf **rs,double emxerr[],int *jstat); 997 #ifndef S1967 998 extern 999 #endif 1000 void GO_API s1967(double ep[],double etang1[],double etang2[],double eder11[], 1001 int im1,int im2,int idim,int ipar,double epar1[],double epar2[], 1002 double eeps[],int nend[],int iopen1,int iopen2,double edgeps[], 1003 int iopt,int itmax,SISLSurf **rs,double emxerr[], 1004 int *jstat); 1005 #ifndef S1968 1006 extern 1007 #endif 1008 void GO_API s1968(SISLSurf *ps,double eeps[],int nend[],int iopen1,int iopen2, 1009 double edgeps[],int iopt,int itmax,SISLSurf **rs, 1010 int *jstat); 1011 #ifndef S1986 1012 extern 1013 #endif 1014 void GO_API s1986(SISLCurve *pc, double aepsge, int *jgtpi, double **gaxis, 1015 double *cang,int *jstat); 1016 #ifndef S1987 1017 extern 1018 #endif 1019 void GO_API s1987(SISLSurf *ps, double aepsge, int *jgtpi, double **gaxis, 1020 double *cang,int *jstat); 1021 #ifndef S1988 1022 extern 1023 #endif 1024 void GO_API s1988(SISLCurve *,double **,double **,int *); 1025 #ifndef S1989 1026 extern 1027 #endif 1028 void GO_API s1989(SISLSurf *,double **,double **,int *); 1029 #ifndef S2500 1030 extern 1031 #endif 1032 void GO_API s2500(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1033 #ifndef S2502 1034 extern 1035 #endif 1036 void GO_API s2502(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1037 #ifndef S2504 1038 extern 1039 #endif 1040 void GO_API s2504(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1041 #ifndef S2506 1042 extern 1043 #endif 1044 void GO_API s2506(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1045 #ifndef S2508 1046 extern 1047 #endif 1048 void GO_API s2508(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1049 #ifndef S2510 1050 extern 1051 #endif 1052 void GO_API s2510(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1053 #ifndef S2532 1054 extern 1055 #endif 1056 void GO_API s2532(SISLSurf *, int, int, int *, int *, SISLSurf ***, int *); 1057 #ifndef S2536 1058 extern 1059 #endif 1060 void GO_API s2536(SISLSurf *, int, int, int *, int *, SISLSurf ***, int *); 1061 #ifndef S2540 1062 extern 1063 #endif 1064 void GO_API s2540(SISLSurf *, int, int, int, double [], int, int, double **, int *); 1065 #ifndef S2542 1066 extern 1067 #endif 1068 void GO_API s2542(SISLSurf *, int, int, int, double [], int *, int *, double *, 1069 double *, double [], double [],int *); 1070 #ifndef S2544 1071 extern 1072 #endif 1073 void GO_API s2544(SISLSurf *, int, int, int, double [], int *, int *, double *, int *); 1074 #ifndef S2545 1075 extern 1076 #endif 1077 void GO_API s2545(SISLSurf *, int, int, int, double [], int, int, double, double **, 1078 int *); 1079 #ifndef S2550 1080 extern 1081 #endif 1082 void GO_API s2550(SISLCurve *, double [], int, double [], int *); 1083 #ifndef S2553 1084 extern 1085 #endif 1086 void GO_API s2553(SISLCurve *, double [], int, double [], int *); 1087 #ifndef S2556 1088 extern 1089 #endif 1090 void GO_API s2556(SISLCurve *, double [], int, double [], int *); 1091 #ifndef S2559 1092 extern 1093 #endif 1094 void GO_API s2559(SISLCurve *, double [], int, double [], double [], double [], 1095 double [], int *); 1096 #ifndef S2562 1097 extern 1098 #endif 1099 void GO_API s2562(SISLCurve *, double [], int, int, double [], double [], double [], 1100 double [], double [], int *); 1101 #ifndef S6DRAWSEQ 1102 extern 1103 #endif 1104 void GO_API s6drawseq(double [],int); 1105 #ifndef MAKE_CV_CYCLIC 1106 extern 1107 #endif 1108 void make_cv_cyclic(SISLCurve *,int,int *); 1109 1110 #else /* not SISLNEEDPROTOTYPES */ 1111 1112 #ifndef CONSTRUCT 1113 extern 1114 #endif 1115 SISLbox *newbox(); 1116 #ifndef CONSTRUCT 1117 extern 1118 #endif 1119 SISLCurve *newCurve(); 1120 #ifndef CONSTRUCT 1121 extern 1122 #endif 1123 SISLCurve *copyCurve(); 1124 #ifndef CONSTRUCT 1125 extern 1126 #endif 1127 SISLdir *newdir(); 1128 #ifndef CONSTRUCT 1129 extern 1130 #endif 1131 SISLIntcurve *newIntcurve(); 1132 #ifndef CONSTRUCT 1133 extern 1134 #endif 1135 SISLSurf *newSurf(); 1136 #ifndef CONSTRUCT 1137 extern 1138 #endif 1139 SISLSurf *copySurface(); 1140 1141 #ifndef DESTRUCT 1142 extern 1143 #endif 1144 void freeCurve(); 1145 #ifndef DESTRUCT 1146 extern 1147 #endif 1148 void freeIntcrvlist(); 1149 #ifndef DESTRUCT 1150 extern 1151 #endif 1152 void freeIntcurve(); 1153 #ifndef DESTRUCT 1154 extern 1155 #endif 1156 void freeSurf(); 1157 #ifndef S1001 1158 extern 1159 #endif 1160 void s1001(); 1161 #ifndef S1011 1162 extern 1163 #endif 1164 void s1011(); 1165 #ifndef S1012 1166 extern 1167 #endif 1168 void s1012(); 1169 #ifndef S1013 1170 extern 1171 #endif 1172 void s1013(); 1173 #ifndef S1014 1174 extern 1175 #endif 1176 void s1014(); 1177 #ifndef S1015 1178 extern 1179 #endif 1180 void s1015(); 1181 #ifndef S1016 1182 extern 1183 #endif 1184 void s1016(); 1185 #ifndef S1017 1186 extern 1187 #endif 1188 void s1017(); 1189 #ifndef S1018 1190 extern 1191 #endif 1192 void s1018(); 1193 #ifndef S1021 1194 extern 1195 #endif 1196 void s1021(); 1197 #ifndef S1022 1198 extern 1199 #endif 1200 void s1022(); 1201 #ifndef S1023 1202 extern 1203 #endif 1204 void s1023(); 1205 #ifndef S1024 1206 extern 1207 #endif 1208 void s1024(); 1209 #ifndef S1025 1210 extern 1211 #endif 1212 void s1025(); 1213 #ifndef S1221 1214 extern 1215 #endif 1216 void s1221(); 1217 #ifndef S1225 1218 extern 1219 #endif 1220 void s1225(); 1221 #ifndef S1226 1222 extern 1223 #endif 1224 void s1226(); 1225 #ifndef S1227 1226 extern 1227 #endif 1228 void s1227(); 1229 #ifndef S1233 1230 extern 1231 #endif 1232 void s1233(); 1233 #ifndef S1237 1234 extern 1235 #endif 1236 void s1237(); 1237 #ifndef S1238 1238 extern 1239 #endif 1240 void s1238(); 1241 #ifndef S1240 1242 extern 1243 #endif 1244 void s1240(); 1245 #ifndef S1241 1246 extern 1247 #endif 1248 void s1241(); 1249 #ifndef S1243 1250 extern 1251 #endif 1252 void s1243(); 1253 #ifndef S1302 1254 extern 1255 #endif 1256 void s1302(); 1257 #ifndef S1303 1258 extern 1259 #endif 1260 void s1303(); 1261 #ifndef S1310 1262 extern 1263 #endif 1264 void s1310(); 1265 #ifndef S1314 1266 extern 1267 #endif 1268 void s1314(); 1269 #ifndef S1315 1270 extern 1271 #endif 1272 void s1315(); 1273 #ifndef S1316 1274 extern 1275 #endif 1276 void s1316(); 1277 #ifndef S1317 1278 extern 1279 #endif 1280 void s1317(); 1281 #ifndef S1318 1282 extern 1283 #endif 1284 void s1318(); 1285 #ifndef S1319 1286 extern 1287 #endif 1288 void s1319(); 1289 #ifndef S1327 1290 extern 1291 #endif 1292 void s1327(); 1293 #ifndef S1328 1294 extern 1295 #endif 1296 void s1328(); 1297 #ifndef S1332 1298 extern 1299 #endif 1300 void s1332(); 1301 #ifndef S1356 1302 extern 1303 #endif 1304 void s1356(); 1305 #ifndef S1357 1306 extern 1307 #endif 1308 void s1357(); 1309 #ifndef S1360 1310 extern 1311 #endif 1312 void s1360(); 1313 #ifndef S1363 1314 extern 1315 #endif 1316 void s1363(); 1317 #ifndef S1364 1318 extern 1319 #endif 1320 void s1364(); 1321 #ifndef S1365 1322 extern 1323 #endif 1324 void s1365(); 1325 #ifndef S1369 1326 extern 1327 #endif 1328 void s1369(); 1329 #ifndef S1371 1330 extern 1331 #endif 1332 void s1371(); 1333 #ifndef S1372 1334 extern 1335 #endif 1336 void s1372(); 1337 #ifndef S1373 1338 extern 1339 #endif 1340 void s1373(); 1341 #ifndef S1374 1342 extern 1343 #endif 1344 void s1374(); 1345 #ifndef S1375 1346 extern 1347 #endif 1348 void s1375(); 1349 #ifndef S1379 1350 extern 1351 #endif 1352 void s1379(); 1353 #ifndef S1380 1354 extern 1355 #endif 1356 void s1380(); 1357 #ifndef S1383 1358 extern 1359 #endif 1360 void s1383(); 1361 #ifndef S1386 1362 extern 1363 #endif 1364 void s1386(); 1365 #ifndef S1387 1366 extern 1367 #endif 1368 void s1387(); 1369 #ifndef S1388 1370 extern 1371 #endif 1372 void s1388(); 1373 #ifndef S1389 1374 extern 1375 #endif 1376 void s1389(); 1377 #ifndef S1390 1378 extern 1379 #endif 1380 void s1390(); 1381 #ifndef S1391 1382 extern 1383 #endif 1384 void s1391(); 1385 #ifndef S1401 1386 extern 1387 #endif 1388 void s1401(); 1389 #ifndef S1421 1390 extern 1391 #endif 1392 void s1421(); 1393 #ifndef S1422 1394 extern 1395 #endif 1396 void s1422(); 1397 #ifndef S1424 1398 extern 1399 #endif 1400 void s1424(); 1401 #ifndef S1425 1402 extern 1403 #endif 1404 void s1425(); 1405 #ifndef S1439 1406 extern 1407 #endif 1408 void s1439(); 1409 #ifndef S1440 1410 extern 1411 #endif 1412 void s1440(); 1413 #ifndef S1450 1414 extern 1415 #endif 1416 void s1450(); 1417 #ifndef S1451 1418 extern 1419 #endif 1420 void s1451(); 1421 #ifndef S1501 1422 extern 1423 #endif 1424 void s1501(); 1425 #ifndef S1502 1426 extern 1427 #endif 1428 void s1502(); 1429 #ifndef S1503 1430 extern 1431 #endif 1432 void s1503(); 1433 #ifndef S1506 1434 extern 1435 #endif 1436 void s1506(); 1437 #ifndef S1508 1438 extern 1439 #endif 1440 void s1508(); 1441 #ifndef S1510 1442 extern 1443 #endif 1444 void s1510(); 1445 #ifndef S1511 1446 extern 1447 #endif 1448 void s1511(); 1449 #ifndef S1514 1450 extern 1451 #endif 1452 void s1514(); 1453 #ifndef S1515 1454 extern 1455 #endif 1456 void s1515(); 1457 #ifndef S1522 1458 extern 1459 #endif 1460 void s1522(); 1461 #ifndef S1529 1462 extern 1463 #endif 1464 void s1529(); 1465 #ifndef S1530 1466 extern 1467 #endif 1468 void s1530(); 1469 #ifndef S1534 1470 extern 1471 #endif 1472 void s1534(); 1473 #ifndef S1535 1474 extern 1475 #endif 1476 void s1535(); 1477 #ifndef S1536 1478 extern 1479 #endif 1480 void s1536(); 1481 #ifndef S1537 1482 extern 1483 #endif 1484 void s1537(); 1485 #ifndef S1538 1486 extern 1487 #endif 1488 void s1538(); 1489 #ifndef S1539 1490 extern 1491 #endif 1492 void s1539(); 1493 #ifndef S1542 1494 extern 1495 #endif 1496 void s1542(); 1497 #ifndef S1600 1498 extern 1499 #endif 1500 void s1600(); 1501 #ifndef S1601 1502 extern 1503 #endif 1504 void s1601(); 1505 #ifndef S1602 1506 extern 1507 #endif 1508 void s1602(); 1509 #ifndef S1603 1510 extern 1511 #endif 1512 void s1603(); 1513 #ifndef S1606 1514 extern 1515 #endif 1516 void s1606(); 1517 #ifndef S1607 1518 extern 1519 #endif 1520 void s1607(); 1521 #ifndef S1608 1522 extern 1523 #endif 1524 void s1608(); 1525 #ifndef S1609 1526 extern 1527 #endif 1528 void s1609(); 1529 #ifndef S1611 1530 extern 1531 #endif 1532 void s1611(); 1533 #ifndef S1613 1534 extern 1535 #endif 1536 void s1613(); 1537 #ifndef S1620 1538 extern 1539 #endif 1540 void s1620(); 1541 #ifndef S1630 1542 extern 1543 #endif 1544 void s1630(); 1545 #ifndef S1706 1546 extern 1547 #endif 1548 void s1706(); 1549 #ifndef S1710 1550 extern 1551 #endif 1552 void s1710(); 1553 #ifndef S1711 1554 extern 1555 #endif 1556 void s1711(); 1557 #ifndef S1712 1558 extern 1559 #endif 1560 void s1712(); 1561 #ifndef S1713 1562 extern 1563 #endif 1564 void s1713(); 1565 #ifndef S1714 1566 extern 1567 #endif 1568 void s1714(); 1569 #ifndef S1715 1570 extern 1571 #endif 1572 void s1715(); 1573 #ifndef S1716 1574 extern 1575 #endif 1576 void s1716(); 1577 #ifndef S1720 1578 extern 1579 #endif 1580 void s1720(); 1581 #ifndef S1730 1582 extern 1583 #endif 1584 void s1730(); 1585 #ifndef S1731 1586 extern 1587 #endif 1588 void s1731(); 1589 #ifndef S1732 1590 extern 1591 #endif 1592 void s1732(); 1593 #ifndef S1733 1594 extern 1595 #endif 1596 void s1733(); 1597 #ifndef S1750 1598 extern 1599 #endif 1600 void s1750(); 1601 #ifndef S1774 1602 extern 1603 #endif 1604 void s1774(); 1605 #ifndef S1775 1606 extern 1607 #endif 1608 void s1775(); 1609 #ifndef S1850 1610 extern 1611 #endif 1612 void s1850(); 1613 #ifndef S1851 1614 extern 1615 #endif 1616 void s1851(); 1617 #ifndef S1852 1618 extern 1619 #endif 1620 void s1852(); 1621 #ifndef S1853 1622 extern 1623 #endif 1624 void s1853(); 1625 #ifndef S1854 1626 extern 1627 #endif 1628 void s1854(); 1629 #ifndef S1855 1630 extern 1631 #endif 1632 void s1855(); 1633 #ifndef S1856 1634 extern 1635 #endif 1636 void s1856(); 1637 #ifndef S1857 1638 extern 1639 #endif 1640 void s1857(); 1641 #ifndef S1858 1642 extern 1643 #endif 1644 void s1858(); 1645 #ifndef S1859 1646 extern 1647 #endif 1648 void s1859(); 1649 #ifndef S1860 1650 extern 1651 #endif 1652 void s1860(); 1653 #ifndef S1870 1654 extern 1655 #endif 1656 void s1870(); 1657 #ifndef S1871 1658 extern 1659 #endif 1660 void s1871(); 1661 #ifndef S1920 1662 extern 1663 #endif 1664 void s1920(); 1665 #ifndef S1921 1666 extern 1667 #endif 1668 void s1921(); 1669 #ifndef S1940 1670 extern 1671 #endif 1672 void s1940(); 1673 #ifndef S1953 1674 extern 1675 #endif 1676 void s1953(); 1677 #ifndef S1954 1678 extern 1679 #endif 1680 void s1954(); 1681 #ifndef S1955 1682 extern 1683 #endif 1684 void s1955(); 1685 #ifndef S1957 1686 extern 1687 #endif 1688 void s1957(); 1689 #ifndef S1958 1690 extern 1691 #endif 1692 void s1958(); 1693 #ifndef S1961 1694 extern 1695 #endif 1696 void s1961(); 1697 #ifndef S1962 1698 extern 1699 #endif 1700 void s1962(); 1701 #ifndef S1963 1702 extern 1703 #endif 1704 void s1963(); 1705 #ifndef S1965 1706 extern 1707 #endif 1708 void s1965(); 1709 #ifndef S1966 1710 extern 1711 #endif 1712 void s1966(); 1713 #ifndef S1967 1714 extern 1715 #endif 1716 void s1967(); 1717 #ifndef S1968 1718 extern 1719 #endif 1720 void s1968(); 1721 #ifndef S1986 1722 extern 1723 #endif 1724 void s1986(); 1725 #ifndef S1987 1726 extern 1727 #endif 1728 void s1987(); 1729 #ifndef S1988 1730 extern 1731 #endif 1732 void s1988(); 1733 #ifndef S1989 1734 extern 1735 #endif 1736 void s1989(); 1737 #ifndef S2500 1738 extern 1739 #endif 1740 void s2500(); 1741 #ifndef S2502 1742 extern 1743 #endif 1744 void s2502(); 1745 #ifndef S2504 1746 extern 1747 #endif 1748 void s2504(); 1749 #ifndef S2506 1750 extern 1751 #endif 1752 void s2506(); 1753 #ifndef S2508 1754 extern 1755 #endif 1756 void s2508(); 1757 #ifndef S2510 1758 extern 1759 #endif 1760 void s2510(); 1761 #ifndef S2532 1762 extern 1763 #endif 1764 void s2532(); 1765 #ifndef S2536 1766 extern 1767 #endif 1768 void s2536(); 1769 #ifndef S2540 1770 extern 1771 #endif 1772 void s2540(); 1773 #ifndef S2542 1774 extern 1775 #endif 1776 void s2542(); 1777 #ifndef S2544 1778 extern 1779 #endif 1780 void s2544(); 1781 #ifndef S2545 1782 extern 1783 #endif 1784 void s2545(); 1785 #ifndef S2550 1786 extern 1787 #endif 1788 void s2550(); 1789 #ifndef S2553 1790 extern 1791 #endif 1792 void s2553(); 1793 #ifndef S2556 1794 extern 1795 #endif 1796 void s2556(); 1797 #ifndef S2559 1798 extern 1799 #endif 1800 void s2559(); 1801 #ifndef S2562 1802 extern 1803 #endif 1804 void s2562(); 1805 #ifndef S6DRAWSEQ 1806 extern 1807 #endif 1808 void s6drawseq(); 1809 #ifndef MAKE_CV_CYCLIC 1810 extern 1811 #endif 1812 void make_cv_cyclic(); 1813 #endif /* End of forward declarations of sisl top level routines */ 1814 1815 #if defined(__cplusplus) 1816 } 1817 #endif 1818 #endif /* SISL_INCLUDED */ 1819 /* DO NOT ADD ANYTHING AFTER THIS LINE */ 1820