OpenSpeech Browser

Getting Started
Architecture Description
Integration Guide

Copyright (c) 1998-2001 SpeechWorks International, Inc. All Rights Reserved.


Cache Interface
Provides a hint on how much CPU/time went into creating the object being written cache.
Default cache creation cost
o VXIcacheOpenMode
Mode values for VXIcache::Open( )
o Cache Flags
Set of flags which control the caching behavior of the data put into the cache.
o Cache Open Properties
Set of properties that are returned on the Open() of an existing cache entry.
Macros to determine the availability of new methods
o VXIcacheResult
VXIcache return codes
o VXIcacheInterface
VXIcache interface for write back caching
Abstract interface for accessing caching functionality, which permits writing arbitrary data into the cache with a client supplied key name, then retrieving that data from the cache one or more times by reading against that key name.

Normally the cache implementation can choose to discard the data between the write and the read when necessary (due to running out of cache space, etc.), but it is also possible for clients to lock data in the cache to support built-in grammars and other data that is explicitly provisioned by system administrators and thus must not be removed unless by explicit system administrator command.

The interface is a synchronous interface based on the ANSI/ISO C standard file I/O interface. The client of the interface may use this in an asynchronous manner by using non-blocking I/O operations, creating threads, or by invoking this from a separate server process.

Typically the key name specified by clients will be the URL to the source form of the data that is being written back, such as the URL to the grammar text being used as the key name for the compiled grammar. In the case where the VXIinet and VXIcache implementations share the same underlying cache storage, it is thus necessary to use prefixes or some other namespace mechanism to avoid collisions with the cache entry for the original URL.

However, the key names specified by clients may be very large in some cases. This is most common when writing back data generated from in-memory source text, such as when writing back the compiled grammar for a VoiceXML document in-line grammar. One possible VXIcache implementation approach is to use the MD5 algorithm as used in HTTP message headers (specified in RFC 1321 with a full implementation provided) to convert long key names to a 16 byte MD5 value for indexing purposes, using Base64 encoding to convert the binary MD5 value to ASCII text if desired (as done in HTTP message headers).

There is one cache interface per thread/line.


Alphabetic index Hierarchy of classes

This page was generated with the help of DOC++.