Adobe.com
Contents Suites Classes Class Index Member Index

SPStrngs.h

Go to the documentation of this file.
00001 /***********************************************************************/
00002 /*                                                                     */
00003 /* SPStrngs.h                                                          */
00004 /*                                                                     */
00005 /* ADOBE SYSTEMS INCORPORATED                                          */
00006 /* Copyright 1995-2007 Adobe Systems Incorporated.                     */
00007 /* All Rights Reserved.                                                */
00008 /*                                                                     */
00009 /* NOTICE:  Adobe permits you to use, modify, and distribute this file */
00010 /* in accordance with the terms of the Adobe license agreement         */
00011 /* accompanying it. If you have received this file from a source other */
00012 /* than Adobe, then your use, modification, or distribution of it      */
00013 /* requires the prior written permission of Adobe.                     */
00014 /*                                                                     */
00015 /* Patents Pending                                                     */
00016 /*                                                                     */
00017 /*                                                                     */
00018 /***********************************************************************/
00019 
00020 #ifndef __SPStrings__
00021 #define __SPStrings__
00022 
00023 
00024 /*******************************************************************************
00025  **
00026  **     Imports
00027  **
00028  **/
00029 
00030 #include "SPTypes.h"
00031 
00032 #include "SPHeaderBegin.h"
00033 
00034 #ifdef __cplusplus
00035 extern "C" {
00036 #endif
00037 
00038 
00039 /*******************************************************************************
00040  **
00041  ** Constants
00042  **
00043  **/
00045 #define kSPStringsSuite                         "SP Strings Suite"
00046 
00047 #define kSPStringsSuiteVersion          2
00048 
00051 #define kSPRuntimeStringPool            ((SPStringPoolRef)NULL)
00052 
00053 
00054 /*******************************************************************************
00055  **
00056  ** Types
00057  **
00058  **/
00059 
00060 /*  If you override the default string pool handler by defining host proc routines,
00061  *      how the string pool memory allocation and searching is done is up to you.  As an example,
00062  *      the structure below is similar to what Sweet Pea uses for its default string pool
00063  *      routines. The pool is a sorted list of strings of number count, kept in memory referenced
00064  *      by the heap field.
00065  *
00066  *                      typedef struct SPStringPool {
00067  *
00068  *                              SPPoolHeapRef heap;
00069  *                              long count;
00070  *
00071  *                      } SPStringPool;
00072  */
00073 
00075 typedef struct SPStringPool *SPStringPoolRef;
00076 
00077 
00078 /*******************************************************************************
00079  **
00080  ** Suite
00081  **
00082  **/
00083 
00100 typedef struct SPStringsSuite {
00101 
00107         SPAPI SPErr (*AllocateStringPool)( SPStringPoolRef *stringPool );
00112         SPAPI SPErr (*FreeStringPool)( SPStringPoolRef stringPool );
00120         SPAPI SPErr (*MakeWString)( SPStringPoolRef stringPool, const char *string, const char **wString );
00121 
00122 } SPStringsSuite;
00123 
00124 
00125 SPAPI SPErr SPAllocateStringPool( SPStringPoolRef *stringPool );
00126 SPAPI SPErr SPFreeStringPool( SPStringPoolRef stringPool );
00127 SPAPI SPErr SPMakeWString( SPStringPoolRef stringPool, const char *string, const char **wString );
00128 
00129 
00130 #ifdef __cplusplus
00131 }
00132 #endif
00133 
00134 #include "SPHeaderEnd.h"
00135 
00136 #endif


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2016 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks