- Timestamp:
- Jul 23, 2006, 12:09:07 PM (18 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/fortran/RpLibraryFInterface.h
r125 r496 65 65 66 66 double rp_lib_get_double ( int* handle, 67 char* path, 68 int path_len); 69 70 int rp_lib_get_integer ( int* handle, 71 char* path, 72 int path_len); 73 74 int rp_lib_get_boolean ( int* handle, 67 75 char* path, 68 76 int path_len); -
trunk/include/fortran/RpLibraryFStubs.h
r125 r496 74 74 int path_len); 75 75 76 int rp_lib_get_integer_ ( int* handle, 77 char* path, 78 int path_len); 79 80 int rp_lib_get_boolean_ ( int* handle, 81 char* path, 82 int path_len); 83 76 84 void rp_lib_put_str_ ( int* handle, 77 85 char* path, … … 189 197 int path_len); 190 198 199 int rp_lib_get_integer__ ( int* handle, 200 char* path, 201 int path_len); 202 203 int rp_lib_get_boolean__ ( int* handle, 204 char* path, 205 int path_len); 206 191 207 void rp_lib_put_str__ ( int* handle, 192 208 char* path, … … 305 321 int path_len); 306 322 323 int RP_LIB_GET_INTEGER ( int* handle, 324 char* path, 325 int path_len); 326 327 int RP_LIB_GET_BOOLEAN ( int* handle, 328 char* path, 329 int path_len); 330 307 331 void RP_LIB_PUT_STR ( int* handle, 308 332 char* path, -
trunk/src/fortran/RpLibraryFInterface.cc
r165 r496 529 529 if (lib) { 530 530 retVal = lib->getDouble(inPath); 531 } 532 } 533 534 return retVal; 535 } 536 537 538 /**********************************************************************/ 539 // FUNCTION: rp_lib_get_integer() 540 /// Get data located at 'path' and return it as an integer value. 541 /** 542 */ 543 int rp_lib_get_integer( int* handle, /* integer handle of library */ 544 char* path, /* null terminated path */ 545 int path_len 546 ) 547 { 548 int retVal = 0; 549 550 RpLibrary* lib = NULL; 551 552 std::string inPath = ""; 553 554 inPath = null_terminate_str(path,path_len); 555 556 if ((handle) && (*handle != 0)) { 557 lib = getObject_Lib(*handle); 558 559 if (lib) { 560 retVal = lib->getInt(inPath); 561 } 562 } 563 564 return retVal; 565 } 566 567 568 /**********************************************************************/ 569 // FUNCTION: rp_lib_get_boolean() 570 /// Get data located at 'path' and return it as an integer value. 571 /** 572 */ 573 int rp_lib_get_boolean( int* handle, /* integer handle of library */ 574 char* path, /* null terminated path */ 575 int path_len 576 ) 577 { 578 bool value = false; 579 int retVal = 0; 580 581 RpLibrary* lib = NULL; 582 583 std::string inPath = ""; 584 585 inPath = null_terminate_str(path,path_len); 586 587 if ((handle) && (*handle != 0)) { 588 lib = getObject_Lib(*handle); 589 590 if (lib) { 591 value = lib->getBool(inPath); 592 if (value == true) { 593 retVal = 1; 594 } 595 else { 596 retVal = 0; 597 } 531 598 } 532 599 } -
trunk/src/fortran/RpLibraryFStubs.c
r125 r496 292 292 } 293 293 294 int 295 rp_lib_get_integer_ ( int* handle, 296 char* path, 297 int path_len) { 298 299 return rp_lib_get_integer(handle,path,path_len); 300 } 301 302 int 303 rp_lib_get_integer__ ( int* handle, 304 char* path, 305 int path_len) { 306 307 return rp_lib_get_integer(handle,path,path_len); 308 } 309 310 int 311 RP_LIB_GET_INTEGER ( int* handle, 312 char* path, 313 int path_len) { 314 315 return rp_lib_get_integer(handle,path,path_len); 316 } 317 318 int 319 rp_lib_get_boolean_ ( int* handle, 320 char* path, 321 int path_len) { 322 323 return rp_lib_get_boolean(handle,path,path_len); 324 } 325 326 int 327 rp_lib_get_boolean__ ( int* handle, 328 char* path, 329 int path_len) { 330 331 return rp_lib_get_boolean(handle,path,path_len); 332 } 333 334 int 335 RP_LIB_GET_BOOLEAN ( int* handle, 336 char* path, 337 int path_len) { 338 339 return rp_lib_get_boolean(handle,path,path_len); 340 } 341 294 342 void 295 343 rp_lib_put_str_ ( int* handle, -
trunk/test/src/RpLibraryF_test.f
r125 r496 66 66 END SUBROUTINE test_get_dbl 67 67 68 SUBROUTINE test_get_int(lib,path) 69 integer lib 70 integer rslt, rp_lib_get_integer 71 character*100 path 72 73 print *,"TESTING GET INTEGER: path = ",path 74 75 rslt = rp_lib_get_integer(lib, path) 76 77 print *,"rslt = ",rslt 78 END SUBROUTINE test_get_int 79 80 SUBROUTINE test_get_bool(lib,path) 81 integer lib 82 integer rslt, rp_lib_get_boolean 83 character*100 path 84 85 print *,"TESTING GET BOOLEAN: path = ",path 86 87 rslt = rp_lib_get_boolean(lib, path) 88 89 print *,"rslt = ",rslt 90 END SUBROUTINE test_get_bool 91 68 92 program rplib_f_tests 69 93 IMPLICIT NONE … … 94 118 call test_get_dbl(driver, path) 95 119 120 ! TESTING GET INT 121 path = "input.integer(try).current" 122 call rp_lib_put_str(driver, path, "12",0) 123 call test_get_int(driver, path) 124 call rp_lib_put_str(driver, path, "15.043",0) 125 call test_get_int(driver, path) 126 127 ! TESTING GET BOOLEAN 128 path = "input.boolean(b).current" 129 call rp_lib_put_str(driver, path, "true",0) 130 call test_get_bool(driver, path) 131 call rp_lib_put_str(driver, path, "false",0) 132 call test_get_bool(driver, path) 133 call rp_lib_put_str(driver, path, "1",0) 134 call test_get_bool(driver, path) 135 call rp_lib_put_str(driver, path, "0",0) 136 call test_get_bool(driver, path) 137 call rp_lib_put_str(driver, path, "on",0) 138 call test_get_bool(driver, path) 139 call rp_lib_put_str(driver, path, "off",0) 140 call test_get_bool(driver, path) 141 call rp_lib_put_str(driver, path, "yes",0) 142 call test_get_bool(driver, path) 143 call rp_lib_put_str(driver, path, "no",0) 144 call test_get_bool(driver, path) 145 call rp_lib_put_str(driver, path, "t",0) 146 call test_get_bool(driver, path) 147 call rp_lib_put_str(driver, path, "f",0) 148 call test_get_bool(driver, path) 149 call rp_lib_put_str(driver, path, "ye",0) 150 call test_get_bool(driver, path) 151 call rp_lib_put_str(driver, path, "n",0) 152 call test_get_bool(driver, path) 153 call rp_lib_put_str(driver, path, "tr",0) 154 call test_get_bool(driver, path) 155 call rp_lib_put_str(driver, path, "of",0) 156 call test_get_bool(driver, path) 96 157 97 158 call rp_result(driver)
Note: See TracChangeset
for help on using the changeset viewer.