メインページ | 構成 | ファイル一覧 | 構成メンバ | ファイルメンバ | 関連ページ

dkcStack.h

説明を見る。
00001 /*
00002 @file dkcStack.h
00003 @auther d金魚
00004 @since 2004/3/xx
00005 @brief スタック構造
00006 */
00007 
00008 
00009 #ifndef DKUTIL_C_STACK_H
00010 #define DKUTIL_C_STACK_H
00011 
00012 
00013 
00014 #include "dkcOSIndependent.h"
00015 #include "dkcSerialize.h"
00016 /*
00017 typedef struct dkc_Stack{
00019     BYTE *mBuffer;
00021     size_t mSize;
00023     size_t mRear;
00025     size_t mOffsetOf;
00026 }DKC_STACK;
00027 */
00031 typedef struct dkc_Stack{
00033     BYTE *mBuffer;
00035     size_t mSize;
00037     size_t mCount;
00039     size_t mOffsetOf;
00040 }DKC_STACK;
00041 
00042 
00043 
00044 
00050 DKC_EXTERN DKC_STACK * WINAPI dkcAllocStack(size_t numoff__,size_t offsetof__);
00057 DKC_EXTERN int WINAPI dkcFreeStack(DKC_STACK **ptr);
00058 
00059 
00064 DKC_EXTERN void WINAPI dkcStackPop(DKC_STACK *ptr);
00065 
00066 DKC_EXTERN int WINAPI dkcStackTop(DKC_STACK *ptr,void *);
00067 
00068 DKC_EXTERN size_t WINAPI dkcStackSize(DKC_STACK *ptr);
00069 
00070 DKC_EXTERN BOOL WINAPI dkcStackIsEmpty(DKC_STACK *ptr);
00074 DKC_EXTERN int WINAPI dkcStackPush(DKC_STACK *ptr,const void *);
00075 
00076 DKC_EXTERN int WINAPI dkcStackDynamicPush(DKC_STACK *ptr,const void *);
00080 DKC_EXTERN void WINAPI dkcStackClear(DKC_STACK *ptr);
00082 DKC_EXTERN size_t WINAPI dkcStackCapacity(DKC_STACK *ptr);
00084 DKC_EXTERN size_t WINAPI dkcStackRestSize(DKC_STACK *ptr);
00085 
00086 DKC_EXTERN int WINAPI dkcStackSerialize(const DKC_STACK *ptr,DKC_SERIALIZE *se);
00087 
00088 DKC_EXTERN DKC_STACK* WINAPI dkcAllocStackDeserialize(DKC_DESERIALIZE *se);
00089 
00090 #ifndef DKUTIL_C_STACK_C
00091 #   include "dkcStack.c"
00092 #endif
00093 
00094 #endif //end of include once

dkutil_cに対してTue Oct 19 03:34:56 2004に生成されました。 doxygen 1.3.6