asarray.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:1k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.  * FILE:    asarray.h
  3.  * AUTHORS: Orion Hodson 
  4.  *
  5.  * Associative array for strings.  Perloined from RAT settings code.
  6.  *
  7.  * Copyright (c) 1999-2000 University College London
  8.  * All rights reserved.
  9.  *
  10.  * $Id: asarray.h,v 1.2 2001/10/03 23:40:29 wmay Exp $
  11.  */
  12. #ifndef __AS_ARRAY_H
  13. #define __AS_ARRAY_H
  14. typedef struct _asarray asarray;
  15. #if defined(__cplusplus)
  16. extern "C" {
  17. #endif
  18. /* Associative array for strings only.  Makes own internal copies of
  19.  * keys and values.
  20.  *
  21.  * Functions that return use TRUE for success and FALSE for failure.
  22.  * Double pointers in arguments are filled in by the function being 
  23.  * called.
  24.  */
  25. int32_t     asarray_create  (asarray **ppa);
  26. void        asarray_destroy (asarray **ppa);
  27. int32_t     asarray_add    (asarray *pa, const char *key, const char *value);
  28. void        asarray_remove (asarray *pa, const char *key);
  29. int32_t     asarray_lookup (asarray *pa, const char *key, char **value);
  30. /* asarray_get_key - gets key corresponding to index'th entry in
  31.  * internal representation, has not relation to order <key,value>
  32.  * tuples added in.  This function exists to provide easy way to drain
  33.  * array one item at a time. 
  34.  */
  35. const char* asarray_get_key_no(asarray *pa, int32_t index);
  36. #if defined(__cplusplus)
  37. }
  38. #endif
  39. #endif /* __AS_ARRAY_H */