/*
 * TYPEDEF: SE_STORE
 *
 *   Pointer to a store object.  The definition of a store object is
 *   hidden by the implementation of this API.  The user of this API simply
 *   passes in and receives back an SE_STORE for functions that deal
 *   with store objects.
 *
 *   A store is an opaque data type, created by calling SE_CreateStore(),
 *   which is used to provide the memory context within which the API returns
 *   data.  The behavior of stores, and the data returned within them,
 *   exhibits the following:
 *
 *   1. A store must be created by SE_CreateStore() before it is used.
 *   2. Data returned in a store is valid until the next time the store is
 *      used as a parameter to a function, or until the application frees
 *      the store with SE_FreeStore().
 *   3. Memory managed by a store is not guaranteed to be released (freed)
 *      until the store is free with SE_FreeStore().
 *
 *   The implementation of the API is at liberty to decide the exact
 *   allocation scheme.  However, applications should safely expect the
 *   following performance characteristics:
 *
 *   1. Reusing an existing store should always be more efficient (both in
 *      speed and memory requirements) than freeing a store and creating a
 *      new one.
 *   2. Reusing a store to return similarly sized data (e.g. object fields,
 *      or portions of a <Data Table>), will result in the most efficient use
 *      of memory space.
 *
 *   Use of stores in the SEDRIS API is limited to functions that return
 *   complex data types, specifically those that involve variable, or dynamic
 *   length data (such as strings and arrays), and other structures that
 *   contain other pointer data types.  Atomic data types (e.g. SE_UINT16,
 *   SE_FLOAT64, etc.) and opaque handle types (e.g. SE_OBJECT, etc.) use
 *   pointer types and address of (&) in order to return data from the API.
 */
typedef struct SE_Store *SE_STORE;
Prev: SE_STATUS_CODE_ENUM. Next: SE_TIME_ENTRY. Up:Index