Main Page | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# dkcStack.h

Go to the documentation of this file.

    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 /*
    00016 typedef struct dkc_Stack{
    00018         BYTE *mBuffer;
    00020         size_t mSize;
    00022         size_t mRear;
    00024         size_t mOffsetOf;
    00025 }DKC_STACK;
    00026 */
    00030 typedef struct dkc_Stack{
    00032         BYTE *mBuffer;
    00034         size_t mSize;
    00036         size_t mCount;
    00038         size_t mOffsetOf;
    00039 }DKC_STACK;
    00040
    00041
    00042
    00043
    00049 DKC_EXTERN DKC_STACK * WINAPI dkcAllocStack(size_t numoff__,size_t offsetof__);
    00056 DKC_EXTERN int WINAPI dkcFreeStack(DKC_STACK **ptr);
    00057
    00058
    00063 DKC_EXTERN void WINAPI dkcStackPop(DKC_STACK *ptr);
    00064
    00065 DKC_EXTERN int WINAPI dkcStackTop(DKC_STACK *ptr,void *);
    00066
    00067 DKC_EXTERN size_t WINAPI dkcStackSize(DKC_STACK *ptr);
    00068
    00069 DKC_EXTERN BOOL WINAPI dkcStackIsEmpty(DKC_STACK *ptr);
    00073 DKC_EXTERN int WINAPI dkcStackPush(DKC_STACK *ptr,const void *);
    00074
    00075 DKC_EXTERN int WINAPI dkcStackDynamicPush(DKC_STACK *ptr,const void *);
    00079 DKC_EXTERN void WINAPI dkcStackClear(DKC_STACK *ptr);
    00080
    00081 #endif //end of include once