Changeset 7472
- Timestamp:
- Jun 9, 2006, 4:28:17 PM (20 years ago)
- Location:
- trunk/psLib
- Files:
-
- 6 edited
-
src/sys/psType.h (modified) (2 diffs)
-
src/types/psMetadata.c (modified) (17 diffs)
-
src/types/psMetadata.h (modified) (13 diffs)
-
src/types/psMetadataConfig.c (modified) (10 diffs)
-
test/types/tst_psMetadata_01.c (modified) (2 diffs)
-
test/types/verified/tst_psMetadata_01.stdout (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/sys/psType.h
r6920 r7472 10 10 * @author Ross Harman, MHPCC 11 11 * 12 * @version $Revision: 1. 49$ $Name: not supported by cvs2svn $13 * @date $Date: 2006-0 4-20 03:32:14$12 * @version $Revision: 1.50 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2006-06-10 02:28:17 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 101 101 PS_DATA_S16 = PS_TYPE_S16, ///< psS16 102 102 PS_DATA_S32 = PS_TYPE_S32, ///< psS32 103 PS_DATA_S64 = PS_TYPE_S64, ///< psS64 103 104 PS_DATA_U8 = PS_TYPE_U8, ///< psU8 104 105 PS_DATA_U16 = PS_TYPE_U16, ///< psU16 105 106 PS_DATA_U32 = PS_TYPE_U32, ///< psU32 107 PS_DATA_U64 = PS_TYPE_U64, ///< psU64 106 108 PS_DATA_F32 = PS_TYPE_F32, ///< psF32 107 109 PS_DATA_F64 = PS_TYPE_F64, ///< psF64 -
trunk/psLib/src/types/psMetadata.c
r7448 r7472 12 12 * @author Ross Harman, MHPCC 13 13 * 14 * @version $Revision: 1.1 09$ $Name: not supported by cvs2svn $15 * @date $Date: 2006-06- 09 01:25:42$14 * @version $Revision: 1.110 $ $Name: not supported by cvs2svn $ 15 * @date $Date: 2006-06-10 02:28:17 $ 16 16 * 17 17 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 184 184 METADATAITEM_ALLOC_TYPE(S16,psS16,PS_DATA_S16) 185 185 METADATAITEM_ALLOC_TYPE(S32,psS32,PS_DATA_S32) 186 METADATAITEM_ALLOC_TYPE(S64,psS64,PS_DATA_S64) 186 187 METADATAITEM_ALLOC_TYPE(U8,psU8,PS_DATA_U8) 187 188 METADATAITEM_ALLOC_TYPE(U16,psU16,PS_DATA_U16) 188 189 METADATAITEM_ALLOC_TYPE(U32,psU32,PS_DATA_U32) 190 METADATAITEM_ALLOC_TYPE(U64,psU64,PS_DATA_U64) 189 191 METADATAITEM_ALLOC_TYPE(Bool,psBool,PS_DATA_BOOL) 190 192 … … 247 249 metadataItem->data.S32 = (psS32)va_arg(argPtr, psS32); 248 250 break; 251 case PS_DATA_S64: 252 metadataItem->data.S64 = (psS64)va_arg(argPtr, psS64); 253 break; 249 254 case PS_DATA_U8: 250 255 metadataItem->data.U8 = (psU8)va_arg(argPtr, psU32); … … 255 260 case PS_DATA_U32: 256 261 metadataItem->data.U32 = (psU32)va_arg(argPtr, psU32); 262 break; 263 case PS_DATA_U64: 264 metadataItem->data.U64 = (psU64)va_arg(argPtr, psU64); 257 265 break; 258 266 case PS_DATA_F32: … … 360 368 PS_METADATA_ITEM_COPY_CASE(S16,S16); 361 369 PS_METADATA_ITEM_COPY_CASE(S32,S32); 370 PS_METADATA_ITEM_COPY_CASE(S64,S64); 362 371 PS_METADATA_ITEM_COPY_CASE(U8,U8); 363 372 PS_METADATA_ITEM_COPY_CASE(U16,U16); 364 373 PS_METADATA_ITEM_COPY_CASE(U32,U32); 374 PS_METADATA_ITEM_COPY_CASE(U64,U64); 365 375 PS_METADATA_ITEM_COPY_CASE(F32,F32); 366 376 PS_METADATA_ITEM_COPY_CASE(F64,F64); … … 614 624 METADATA_ADD_TYPE(S16,psS16,PS_DATA_S16) 615 625 METADATA_ADD_TYPE(S32,psS32,PS_DATA_S32) 626 METADATA_ADD_TYPE(S64,psS64,PS_DATA_S64) 616 627 METADATA_ADD_TYPE(U8,psU8,PS_DATA_U8) 617 628 METADATA_ADD_TYPE(U16,psU16,PS_DATA_U16) 618 629 METADATA_ADD_TYPE(U32,psU32,PS_DATA_U32) 630 METADATA_ADD_TYPE(U64,psU64,PS_DATA_U64) 619 631 METADATA_ADD_TYPE(F32,psF32,PS_DATA_F32) 620 632 METADATA_ADD_TYPE(F64,psF64,PS_DATA_F64) … … 825 837 value = (ps##TYPE)metadataItem->data.S32; \ 826 838 break; \ 839 case PS_DATA_S64: \ 840 value = (ps##TYPE)metadataItem->data.S64; \ 841 break; \ 827 842 case PS_DATA_U8: \ 828 843 value = (ps##TYPE)metadataItem->data.U8; \ … … 833 848 case PS_DATA_U32: \ 834 849 value = (ps##TYPE)metadataItem->data.U32; \ 850 break; \ 851 case PS_DATA_U64: \ 852 value = (ps##TYPE)metadataItem->data.U64; \ 835 853 break; \ 836 854 case PS_DATA_F32: \ … … 862 880 psMetadataLookupNumTYPE(S16) 863 881 psMetadataLookupNumTYPE(S32) 882 psMetadataLookupNumTYPE(S64) 864 883 psMetadataLookupNumTYPE(U8) 865 884 psMetadataLookupNumTYPE(U16) 866 885 psMetadataLookupNumTYPE(U32) 886 psMetadataLookupNumTYPE(U64) 867 887 psMetadataLookupNumTYPE(Bool) 868 888 … … 1096 1116 1097 1117 1098 voidpsMetadataPrint(FILE *fd,1118 bool psMetadataPrint(FILE *fd, 1099 1119 psMetadata *md, 1100 1120 int level) 1101 1121 { 1102 PS_ASSERT_PTR_NON_NULL(md, );1122 PS_ASSERT_PTR_NON_NULL(md,false); 1103 1123 if (fd == NULL) { 1104 1124 fd = stdout; … … 1107 1127 psError(PS_ERR_IO, true, 1108 1128 "Invalid file pointer in psMetadataPrint. Could not write to fd.\n"); 1109 return ;1129 return false; 1110 1130 } 1111 1131 } … … 1142 1162 fprintf(fd, "%d", item->data.S32); 1143 1163 break; 1164 case PS_DATA_S64: 1165 fprintf(fd, "%ld", item->data.S64); 1166 break; 1144 1167 case PS_DATA_U8: 1145 1168 fprintf(fd, "%u", item->data.U8); … … 1150 1173 case PS_DATA_U32: 1151 1174 fprintf(fd, "%u", item->data.U32); 1175 break; 1176 case PS_DATA_U64: 1177 fprintf(fd, "%lu", item->data.U64); 1152 1178 break; 1153 1179 case PS_DATA_F32: … … 1201 1227 } 1202 1228 break; 1203 /* case PS_DATA_U64: 1204 fprintf(fd, "U64 "); 1205 for (int i = 0; i < vector->n; i++) { 1206 fprintf(fd, "%u ", vector->data.U64[i]); 1207 } 1208 break; 1209 */ 1229 case PS_DATA_U64: 1230 fprintf(fd, "U64 "); 1231 for (int i = 0; i < vector->n; i++) { 1232 fprintf(fd, "%lu ", vector->data.U64[i]); 1233 } 1234 break; 1210 1235 case PS_DATA_S8: 1211 1236 fprintf(fd, "S8 "); … … 1226 1251 } 1227 1252 break; 1228 /* case PS_DATA_S64: 1229 fprintf(fd, "S64 "); 1230 for (int i = 0; i < vector->n; i++) { 1231 fprintf(fd, "%ld ", vector->data.S64[i]); 1232 } 1233 break; 1234 */ 1253 case PS_DATA_S64: 1254 fprintf(fd, "S64 "); 1255 for (int i = 0; i < vector->n; i++) { 1256 fprintf(fd, "%ld ", vector->data.S64[i]); 1257 } 1258 break; 1235 1259 case PS_DATA_F32: 1236 1260 fprintf(fd, "F32 "); … … 1249 1273 psError(PS_ERR_BAD_PARAMETER_VALUE, true, 1250 1274 PS_ERRORTEXT_psMetadata_METATYPE_INVALID, vector->type.type); 1251 return ;1275 return false; 1252 1276 } 1253 1277 break; … … 1261 1285 psFree(iter); 1262 1286 1263 return ;1287 return true; 1264 1288 } 1265 1289 -
trunk/psLib/src/types/psMetadata.h
r7448 r7472 11 11 * @author Ross Harman, MHPCC 12 12 * 13 * @version $Revision: 1.7 8$ $Name: not supported by cvs2svn $14 * @date $Date: 2006-06- 09 01:25:42$13 * @version $Revision: 1.79 $ $Name: not supported by cvs2svn $ 14 * @date $Date: 2006-06-10 02:28:17 $ 15 15 * 16 16 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 36 36 TYPE == PS_DATA_S16 || \ 37 37 TYPE == PS_DATA_S32 || \ 38 TYPE == PS_DATA_S64 || \ 38 39 TYPE == PS_DATA_U8 || \ 39 40 TYPE == PS_DATA_U16 || \ 40 41 TYPE == PS_DATA_U32 || \ 42 TYPE == PS_DATA_U64 || \ 41 43 TYPE == PS_DATA_F32 || \ 42 44 TYPE == PS_DATA_F64 || \ … … 45 47 #define PS_DATA_PRIMITIVE_TYPE(DATATYPE) ( \ 46 48 (DATATYPE==PS_DATA_S8 || DATATYPE==PS_DATA_S16 || \ 47 DATATYPE==PS_DATA_S32 || DATATYPE==PS_DATA_ U8 || \48 DATATYPE==PS_DATA_U16 || DATATYPE==PS_DATA_U32 || DATATYPE==PS_DATA_ F32|| \49 DATATYPE==PS_DATA_F 64 || DATATYPE==PS_DATA_BOOL) ? DATATYPE : 0)49 DATATYPE==PS_DATA_S32 || DATATYPE==PS_DATA_S64 || DATATYPE==PS_DATA_U8 || \ 50 DATATYPE==PS_DATA_U16 || DATATYPE==PS_DATA_U32 || DATATYPE==PS_DATA_U64 || \ 51 DATATYPE==PS_DATA_F32 || DATATYPE==PS_DATA_F64 || DATATYPE==PS_DATA_BOOL) ? DATATYPE : 0) 50 52 51 53 … … 108 110 psS16 S16; ///< Signed 16-bit integer data. 109 111 psS32 S32; ///< Signed 32-bit integer data. 112 psS64 S64; ///< Signed 64-bit integer data. 110 113 psU8 U8; ///< Unsigned 8-bit integer data. 111 114 psU16 U16; ///< Unsigned 16-bit integer data. 112 115 psU32 U32; ///< Unsigned 32-bit integer data. 116 psU64 U64; ///< Unsigned 64-bit integer data. 113 117 psF32 F32; ///< Single-precision float data. 114 118 psF64 F64; ///< Double-precision float data. … … 233 237 ); 234 238 239 /** Create a metadata item with specified psS64 data. 240 * 241 * Returns a fill psMetadataItem ready for insertion into the psMetadata 242 * struct. 243 * 244 * @return psMetadataItem* : Pointer metadata item. 245 */ 246 psMetadataItem* psMetadataItemAllocS64( 247 const char* name, ///< Name of metadata item. 248 const char* comment, ///< Comment for metadata item. 249 psS64 value ///< the value of the metadata item. 250 ); 251 235 252 /** Create a metadata item with specified psU8 data. 236 253 * … … 270 287 const char* comment, ///< Comment for metadata item. 271 288 psU32 value ///< the value of the metadata item. 289 ); 290 291 /** Create a metadata item with specified psU64 data. 292 * 293 * Returns a fill psMetadataItem ready for insertion into the psMetadata 294 * struct. 295 * 296 * @return psMetadataItem* : Pointer metadata item. 297 */ 298 psMetadataItem* psMetadataItemAllocU64( 299 const char* name, ///< Name of metadata item. 300 const char* comment, ///< Comment for metadata item. 301 psU64 value ///< the value of the metadata item. 272 302 ); 273 303 … … 351 381 ); 352 382 353 /** Creates a new copy of all the psMetadataItems in the psMetadata collection, in, and 383 /** Create a copy of an existing psMetadata collection. 384 * 385 * Creates a new copy of all the psMetadataItems in the psMetadata collection, in, and 354 386 * returns them in out, or creates a new container if out is NULL. 355 387 * … … 361 393 ); 362 394 363 // Copy a metadata item from one psMetadata to another 364 bool psMetadataItemTransfer(psMetadata *out, // Destination: copy is placed here 365 const psMetadata *in, // Source: item comes from here 366 const char *key // key to identify the metadata item 367 ); 395 /** Copy a metadata item from one psMetadata to another. 396 * 397 * Creates a copy of a psMetadataItem from in and appends it to out. If out is NULL, 398 * a new container is created. 399 * 400 * @return bool: True if successful, otherwise false. 401 */ 402 bool psMetadataItemTransfer( 403 psMetadata *out, ///< output Metadata container for copying. 404 const psMetadata *in, ///< Metadata collection from which to copy. 405 const char *key ///< key to identify the metadata item for copying. 406 ); 368 407 369 408 /** Add existing metadata item to metadata collection. … … 465 504 ); 466 505 506 /** Add a psS64 value to metadata collection. 507 * 508 * @return bool: True for success, False for failure. 509 */ 510 bool psMetadataAddS64( 511 psMetadata* md, ///< Metadata collection to insert metadata item 512 long location, ///< Index number, PS_LIST_HEAD, or PS_LIST_TAIL 513 const char* name, ///< Name of metadata item 514 int format, ///< psMetadataFlag options/flags 515 const char* comment, ///< Comment for metadata item 516 psS64 value ///< Value for metadata item data 517 ); 518 467 519 /** Add a psU8 value to metadata collection. 468 520 * … … 502 554 const char* comment, ///< Comment for metadata item 503 555 psU32 value ///< Value for metadata item data 556 ); 557 558 /** Add a psU64 value to metadata collection. 559 * 560 * @return bool: True for success, False for failure. 561 */ 562 bool psMetadataAddU64( 563 psMetadata* md, ///< Metadata collection to insert metadata item 564 long location, ///< Index number, PS_LIST_HEAD, or PS_LIST_TAIL 565 const char* name, ///< Name of metadata item 566 int format, ///< psMetadataFlag options/flags 567 const char* comment, ///< Comment for metadata item 568 psU64 value ///< Value for metadata item data 504 569 ); 505 570 … … 796 861 * returned. 797 862 * 863 * @return psS64 : Value of metadata item. 864 */ 865 psS64 psMetadataLookupS64( 866 bool *status, ///< Status of lookup. 867 const psMetadata *md, ///< Metadata collection to lookup metadata item. 868 const char *key ///< Name of metadata key. 869 ); 870 871 /** Find an item in the metadata collection based on key name and return its integer value. 872 * 873 * Items may be found in the metadata by providing a key. If the key is 874 * non-unique, the value of the first item is returned. If the item is not found, zero is 875 * returned. 876 * 798 877 * @return psU8 : Value of metadata item. 799 878 */ … … 827 906 */ 828 907 psU32 psMetadataLookupU32( 908 bool *status, ///< Status of lookup. 909 const psMetadata *md, ///< Metadata collection to lookup metadata item. 910 const char *key ///< Name of metadata key. 911 ); 912 913 /** Find an item in the metadata collection based on key name and return its integer value. 914 * 915 * Items may be found in the metadata by providing a key. If the key is 916 * non-unique, the value of the first item is returned. If the item is not found, zero is 917 * returned. 918 * 919 * @return psU64 : Value of metadata item. 920 */ 921 psU64 psMetadataLookupU64( 829 922 bool *status, ///< Status of lookup. 830 923 const psMetadata *md, ///< Metadata collection to lookup metadata item. … … 951 1044 * Metadata contents are printed to a valid file descriptor if one exists. Otherwise, 952 1045 * fd should be NULL and the contents are printed to the screen (stdout). 1046 * 1047 * @return bool: True if successful, otherwise false. 953 1048 */ 954 voidpsMetadataPrint(1049 bool psMetadataPrint( 955 1050 FILE *fd, ///< File Descriptor or NULL 956 1051 psMetadata *md, ///< Metadata collection to print. -
trunk/psLib/src/types/psMetadataConfig.c
r7468 r7472 10 10 * @author Eric Van Alst, MHPCC 11 11 * 12 * @version $Revision: 1.6 0$ $Name: not supported by cvs2svn $13 * @date $Date: 2006-06-10 0 1:27:52$12 * @version $Revision: 1.61 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2006-06-10 02:28:17 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 484 484 fprintf(fd,format,(FORMAT_TYPE) item->data.S32); \ 485 485 break; \ 486 case PS_DATA_S64: \ 487 fprintf(fd,format,(FORMAT_TYPE) item->data.S64); \ 488 break; \ 486 489 case PS_DATA_U8: \ 487 490 fprintf(fd,format,(FORMAT_TYPE) item->data.U8); \ … … 492 495 case PS_DATA_U32: \ 493 496 fprintf(fd,format,(FORMAT_TYPE) item->data.U32); \ 497 break; \ 498 case PS_DATA_U64: \ 499 fprintf(fd,format,(FORMAT_TYPE) item->data.U64); \ 494 500 break; \ 495 501 case PS_DATA_F32: \ … … 1533 1539 psStringAppend(&content, " \n"); 1534 1540 break; 1541 case PS_DATA_S64: 1542 psStringAppend(&content, "%s S64 ", item->name); 1543 psStringAppend(&content, "%ld ", item->data.S64); 1544 if ( strncmp(item->comment,"",2) ) { 1545 psStringAppend(&content, " #%s", item->comment); 1546 } 1547 psStringAppend(&content, " \n"); 1548 break; 1535 1549 case PS_DATA_U8: 1536 1550 psStringAppend(&content, "%s U8 ", item->name); 1537 psStringAppend(&content, "% d", item->data.U8);1551 psStringAppend(&content, "%u ", item->data.U8); 1538 1552 if ( strncmp(item->comment,"",2) ) { 1539 1553 psStringAppend(&content, " #%s", item->comment); … … 1543 1557 case PS_DATA_U16: 1544 1558 psStringAppend(&content, "%s U16 ", item->name); 1545 psStringAppend(&content, "% d", item->data.U16);1559 psStringAppend(&content, "%u ", item->data.U16); 1546 1560 if ( strncmp(item->comment,"",2) ) { 1547 1561 psStringAppend(&content, " #%s", item->comment); … … 1551 1565 case PS_DATA_U32: 1552 1566 psStringAppend(&content, "%s U32 ", item->name); 1553 psStringAppend(&content, "%d ", item->data.U32); 1567 psStringAppend(&content, "%u ", item->data.U32); 1568 if ( strncmp(item->comment,"",2) ) { 1569 psStringAppend(&content, " #%s", item->comment); 1570 } 1571 psStringAppend(&content, " \n"); 1572 break; 1573 case PS_DATA_U64: 1574 psStringAppend(&content, "%s U64 ", item->name); 1575 psStringAppend(&content, "%lu ", item->data.U64); 1554 1576 if ( strncmp(item->comment,"",2) ) { 1555 1577 psStringAppend(&content, " #%s", item->comment); … … 1637 1659 psStringAppend(&content, "U8 "); 1638 1660 for (int i = 0; i < vector->n; i++) { 1639 psStringAppend(&content, "% d", vector->data.U8[i]);1661 psStringAppend(&content, "%u ", vector->data.U8[i]); 1640 1662 } 1641 1663 break; … … 1643 1665 psStringAppend(&content, "U16 "); 1644 1666 for (int i = 0; i < vector->n; i++) { 1645 psStringAppend(&content, "% d", vector->data.U16[i]);1667 psStringAppend(&content, "%u ", vector->data.U16[i]); 1646 1668 } 1647 1669 break; … … 1649 1671 psStringAppend(&content, "U32 "); 1650 1672 for (int i = 0; i < vector->n; i++) { 1651 psStringAppend(&content, "%d ", vector->data.U32[i]); 1673 psStringAppend(&content, "%u ", vector->data.U32[i]); 1674 } 1675 break; 1676 case PS_DATA_U64: 1677 psStringAppend(&content, "U64 "); 1678 for (int i = 0; i < vector->n; i++) { 1679 psStringAppend(&content, "%lu ", vector->data.U64[i]); 1652 1680 } 1653 1681 break; … … 1668 1696 for (int i = 0; i < vector->n; i++) { 1669 1697 psStringAppend(&content, "%d ", vector->data.S32[i]); 1698 } 1699 break; 1700 case PS_DATA_S64: 1701 psStringAppend(&content, "S64 "); 1702 for (int i = 0; i < vector->n; i++) { 1703 psStringAppend(&content, "%ld ", vector->data.S64[i]); 1670 1704 } 1671 1705 break; -
trunk/psLib/test/types/tst_psMetadata_01.c
r7448 r7472 5 5 * @author dRob, MHPCC 6 6 * 7 * @version $Revision: 1. 7$ $Name: not supported by cvs2svn $8 * @date $Date: 2006-06- 09 01:25:42$7 * @version $Revision: 1.8 $ $Name: not supported by cvs2svn $ 8 * @date $Date: 2006-06-10 02:28:17 $ 9 9 * 10 10 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 126 126 psMetadataAddU16(md, PS_LIST_TAIL, "item9", 0, "I am U16", 666); 127 127 psMetadataAddU32(md, PS_LIST_TAIL, "item10", 0, "I am U32", 666); 128 psMetadataAddS64(md, PS_LIST_TAIL, "item11", 0, "I am S64", 666); 129 psMetadataAddU64(md, PS_LIST_TAIL, "item12", 0, "I am U64", 666); 128 130 129 131 psMetadataAddS32(newMD, PS_LIST_TAIL, "ITEM01", 0, NULL, 666); -
trunk/psLib/test/types/verified/tst_psMetadata_01.stdout
r7448 r7472 11 11 item9 (I am U16): 666 12 12 item10 (I am U32): 666 13 item11 (I am S64): 666 14 item12 (I am U64): 666 13 15 metadata7 (I am a metadata): 14 16 ITEM01: 666
Note:
See TracChangeset
for help on using the changeset viewer.
