Changeset 488
- Timestamp:
- Apr 21, 2004, 4:25:58 AM (22 years ago)
- Location:
- trunk/archive/pslib/src/Metadata
- Files:
-
- 1 added
- 2 edited
-
Makefile (modified) (2 diffs)
-
metadata.c (modified) (3 diffs)
-
tst_metadata.c (added)
Legend:
- Unmodified
- Added
- Removed
-
trunk/archive/pslib/src/Metadata/Makefile
r446 r488 8 8 LIBS = -L$(PSLIB_DIR)/lib -lUtils 9 9 10 PROGS = metadata 10 .PHONY : all 11 all : metadata.o 12 # 13 # Test code 14 # 15 TST_PROGS = tst_metadata 16 test : $(TST_PROGS) 17 for p in $(TST_PROGS); do \ 18 echo $$p; \ 19 $$p; \ 20 done 11 21 12 metadata :metadata.o13 $(CC) -o metadata metadata.o $(LIBS)22 tst_metadata : tst_metadata.o metadata.o 23 $(CC) -o metadata tst_metadata.o metadata.o $(LIBS) 14 24 # 25 .PHONY :_tags 15 26 _tags :; 16 27 tags : _tags … … 18 29 # 19 30 clean : 20 $(RM) $( PROGS) *.o *.a *.log *.dvi *.aux *.toc *.log *.out *~ core TAGS31 $(RM) $(TST_PROGS) *.o *.a *.log *.dvi *.aux *.toc *.log *.out *~ core TAGS 21 32 empty : clean -
trunk/archive/pslib/src/Metadata/metadata.c
r458 r488 294 294 * Iterators for the psDlist representation of the metadata 295 295 */ 296 void psMetadata Iterator(psMetadata *ms)296 void psMetadataSetIterator(psMetadata *ms) 297 297 { 298 298 assert (ms != NULL); … … 306 306 psMetadataItem *meta = psDlistGetNext(ms->list, 0); 307 307 308 if (match == NULL || m eta == NULL) {308 if (match == NULL || match[0] == '\0' || meta == NULL) { 309 309 return meta; 310 310 } else { … … 397 397 } 398 398 } 399 400 /*****************************************************************************/401 /*402 * Test code403 */404 #if 1405 #include <math.h>406 407 int main(void)408 {409 psSetTraceLevel("metadata", 1); // turn on tracing410 psSetLogFormat("NM"); // suppress some of the psLogMsg verbosity411 412 psMetadata *ms = psMetadataAlloc(); // set of metadata413 psMetadataItem *meta = NULL; // used to traverse a set of metadata414 415 for (int i = 0; i < 10; i += 5) {416 float sqrti = sqrt(i);417 psMetadataAppend(ms, PS_META_INT, &i, NULL, "const.%d", i);418 psMetadataAppend(ms, PS_META_FLOAT, &sqrti, "square root", "const.sqrt%d", i);419 }420 psMetadataAppend(ms, PS_META_STR | PS_META_NON_UNIQUE, "Bonjour", "French", "lang.hello");421 psMetadataAppend(ms, PS_META_STR | PS_META_NON_UNIQUE, "Aloha", "Hawaiian", "lang.hello");422 psMetadataAppend(ms, PS_META_STR | PS_META_NON_UNIQUE, "Good Morning", "English", "lang.hello");423 /*424 * Print all metadata starting "lang"425 */426 psMetadataItemFree(psMetadataRemove(ms, "lang.hello.0"));427 428 psMetadataIterator(ms);429 while ((meta = psMetadataGetNext(ms, "lang")) != NULL) {430 psMetadataItemPrint(stdout, meta, "");431 }432 /*433 * Remove a key434 */435 psMetadataItemFree(psMetadataRemove(ms, "lang.hello"));436 /*437 * Print all metadata438 */439 fprintf(stdout, "------\n");440 psMetadataIterator(ms);441 while ((meta = psMetadataGetNext(ms, NULL)) != NULL) {442 psMetadataItemPrint(stdout, meta, "");443 }444 /*445 * Look up a key by name446 */447 fprintf(stdout, "------\n");448 fprintf(stdout, "Looking up by name:\n");449 meta = psMetadataLookup(ms, "const.5");450 if (meta != NULL) {451 psMetadataItemPrint(stdout, meta, "");452 }453 /*454 * Clean up455 */456 psMetadataFree(ms);457 /*458 * Check for memory leaks459 */460 fprintf(stderr,"Checking for memory leaks:\n");461 psTraceReset();462 psMemCheckLeaks(0, NULL, stderr);463 464 return 0;465 }466 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
