This file defines metadata item, metadata type, metadata flags, metadata containers, and function prototypes necessary creating psLib metadata APIs
Ross Harman, MHPCC
Definition in file psMetadata.h.
#include <stdarg.h>
#include <stdio.h>
#include <sys/types.h>
#include <regex.h>
#include "psHash.h"
#include "psList.h"
#include "psTime.h"
#include "psLookupTable.h"
Include dependency graph for psMetadata.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Defines | |
| #define | PS_META_IS_PRIMITIVE(TYPE) |
| #define | PS_META_PRIMITIVE_TYPE(METATYPE) |
| #define | PS_METADATA_FLAGS_MASK 0xFF000000 |
| #define | PS_METADATA_TYPE_MASK 0x00FFFFFF |
Enumerations | |
| enum | psMetadataType { PS_META_S32 = PS_TYPE_S32, PS_META_F32 = PS_TYPE_F32, PS_META_F64 = PS_TYPE_F64, PS_META_BOOL = PS_TYPE_BOOL, PS_META_LIST = 0x10000, PS_META_STR, PS_META_VEC, PS_META_IMG, PS_META_HASH, PS_META_LOOKUPTABLE, PS_META_JPEG, PS_META_PNG, PS_META_ASTROM, PS_META_UNKNOWN, PS_META_MULTI, PS_META_META = PS_DATA_METADATA, PS_META_ARRAY, PS_META_TIME } |
| Metadata item type. More... | |
| enum | psMetadataFlags { PS_META_DEFAULT = 0, PS_META_REPLACE = 0x1000000, PS_META_DUPLICATE_OK = 0x2000000, PS_META_NULL = 0x4000000 } |
| Option flags for psMetadata functions. More... | |
Functions | |
| psMetadataItem * | psMetadataItemAlloc (const char *name, psDataType type, const char *comment,...) |
| Create a metadata item. | |
| bool | psMemCheckMetadataItem (psPtr ptr) |
| Checks the type of a particular pointer. | |
| psMetadataItem * | psMetadataItemAllocStr (const char *name, const char *comment, const char *value) |
| Create a metadata item with specified string data. | |
| psMetadataItem * | psMetadataItemAllocF32 (const char *name, const char *comment, psF32 value) |
| Create a metadata item with specified psF32 data. | |
| psMetadataItem * | psMetadataItemAllocF64 (const char *name, const char *comment, psF64 value) |
| Create a metadata item with specified psF64 data. | |
| psMetadataItem * | psMetadataItemAllocS32 (const char *name, const char *comment, psS32 value) |
| Create a metadata item with specified psS32 data. | |
| psMetadataItem * | psMetadataItemAllocBool (const char *name, const char *comment, bool value) |
| Create a metadata item with specified psBool data. | |
| psMetadataItem * | psMetadataItemAllocV (const char *name, psDataType type, const char *comment, va_list list) |
| Create a metadata item with va_list. | |
| psMetadata * | psMetadataAlloc (void) |
| Create a metadata collection. | |
| bool | psMemCheckMetadata (psPtr ptr) |
| Checks the type of a particular pointer. | |
| bool | psMetadataAddItem (psMetadata *md, const psMetadataItem *item, int location, psS32 flags) |
| Add existing metadata item to metadata collection. | |
| bool | psMetadataAdd (psMetadata *md, long location, const char *name, int format, const char *comment,...) |
| Create and add a metadata item to metadata collection. | |
| bool | psMetadataAddV (psMetadata *md, long location, const char *name, int format, const char *comment, va_list list) |
| Create and add a metadata item to metadata collection. | |
| bool | psMetadataAddBool (psMetadata *md, long location, const char *name, int format, const char *comment, bool value) |
| Add a psBool value to metadata collection. | |
| bool | psMetadataAddS32 (psMetadata *md, long location, const char *name, int format, const char *comment, psS32 value) |
| Add a psS32 value to metadata collection. | |
| bool | psMetadataAddF32 (psMetadata *md, long location, const char *name, int format, const char *comment, psF32 value) |
| Add a psF32 value to metadata collection. | |
| bool | psMetadataAddF64 (psMetadata *md, long location, const char *name, int format, const char *comment, psF64 value) |
| Add a psF64 value to metadata collection. | |
| psBool | psMetadataAddList (psMetadata *md, long location, const char *name, int format, const char *comment, psList *value) |
| Add a psList to metadata collection. | |
| bool | psMetadataAddStr (psMetadata *md, long location, const char *name, int format, const char *comment, const char *value) |
| Add a string to metadata collection. | |
| psBool | psMetadataAddVector (psMetadata *md, long location, const char *name, int format, const char *comment, psVector *value) |
| Add a vector to metadata collection. | |
| psBool | psMetadataAddArray (psMetadata *md, long location, const char *name, int format, const char *comment, psArray *value) |
| Add a array to metadata collection. | |
| psBool | psMetadataAddImage (psMetadata *md, long location, const char *name, int format, const char *comment, psImage *value) |
| Add an Image to metadata collection. | |
| psBool | psMetadataAddTime (psMetadata *md, long location, const char *name, int format, const char *comment, psTime *value) |
| Add a Time to metadata collection. | |
| psBool | psMetadataAddHash (psMetadata *md, long location, const char *name, int format, const char *comment, psHash *value) |
| Add a Hash to metadata collection. | |
| psBool | psMetadataAddLookupTable (psMetadata *md, long location, const char *name, int format, const char *comment, psLookupTable *value) |
| Add a LookupTable to metadata collection. | |
| psBool | psMetadataAddUnknown (psMetadata *md, long location, const char *name, int format, const char *comment, psPtr value) |
| Add an Unknown (psPtr) to metadata collection. | |
| psBool | psMetadataAddMetadata (psMetadata *md, long location, const char *name, int format, const char *comment, psMetadata *value) |
| Add Metadata to metadata collection. | |
| bool | psMetadataRemove (psMetadata *md, long location, const char *key) |
| Remove an item from metadata collection. | |
| psMetadataItem * | psMetadataLookup (const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name. | |
| psF64 | psMetadataLookupF64 (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its double precision value. | |
| psF32 | psMetadataLookupF32 (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its single precision value. | |
| psS32 | psMetadataLookupS32 (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its integer value. | |
| bool | psMetadataLookupBool (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its boolean value. | |
| psPtr | psMetadataLookupPtr (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its integer value. | |
| psMetadataItem * | psMetadataGet (const psMetadata *md, int location) |
| Find an item in the metadata collection based on list index. | |
| psMetadataIterator * | psMetadataIteratorAlloc (psMetadata *md, long location, const char *regex) |
| Creates a psMetadataIterator to iterate over the specified psMetadata. | |
| bool | psMetadataIteratorSet (psMetadataIterator *iterator, long location) |
| Set the iterator of the psMetadat to a given position. | |
| psMetadataItem * | psMetadataGetAndIncrement (psMetadataIterator *iterator) |
| Position the specified iterator to the next matching item in psMetadata, given the regular expression of the iterator. | |
| psMetadataItem * | psMetadataGetAndDecrement (psMetadataIterator *iterator) |
| Position the specified iterator to the previous matching item in psMetadata, given the regular expression of the iterator. | |
| psMetadata * | psMetadataLookupMD (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its metadata value. | |
| char * | psMetadataLookupString (bool *status, const psMetadata *md, const char *key) |
| Find an item in the metadata collection based on key name and return its string value. | |
| void | psMetadataPrint (psMetadata *md, int level) |
| Print metadata collection to screen. | |
1.4.2