#include "dkcDeque.h"#include "dkcStdio.h"dkcDeque.cのインクルード依存関係図

マクロ定義 | |
| #define | DKUTIL_C_DEQUE_C |
関数 | |
| DKC_DEQUE *WINAPI | dkcAllocDeque (size_t numof__, size_t offsetof__) |
| キュー領域を得る。 | |
| int WINAPI | dkcFreeDeque (DKC_DEQUE **ptr) |
| int WINAPI | dkcDequePopBack (DKC_DEQUE *ptr, void *) |
| int WINAPI | dkcDequePushFront (DKC_DEQUE *ptr, const void *) |
| int WINAPI | dkcDequePopFront (DKC_DEQUE *ptr, void *) |
| void WINAPI | dkcDequeClear (DKC_DEQUE *ptr) |
| int WINAPI | dkcDequeSerialize (const DKC_DEQUE *ptr, DKC_SERIALIZE *se) |
| DKC_DEQUE *WINAPI | dkcAllocQueueDeserialize (DKC_DESERIALIZE *se) |
| int WINAPI | dkcDequeGetPoint (const DKC_DEQUE *ptr, size_t point_of__, void *buffer, size_t buffsize) |
dkcDeque.c で定義されています。
|
|
dkcDeque.c の 7 行で定義されています。 |
|
||||||||||||
|
キュー領域を得る。
dkcDeque.c の 13 行で定義されています。 参照先 DKC_DEQUE, dkcAllocate(), dkcFree(), dkc_Deque::mBuffer, dkc_Deque::mOffsetOf, dkc_Deque::mSize, と NULL.
00014 {
00015 DKC_DEQUE *p;
00016 size_t size = numof__ * offsetof__;
00017
00018 p = dkcAllocate(sizeof(DKC_DEQUE));
00019 if(NULL==p) return NULL;
00020
00021 p->mBuffer = dkcAllocate(size);
00022 if(NULL==p->mBuffer) goto Error;
00023
00024 /* dkcAllocateでmemset(0)なのでヽ(゚д゚)ノ ええじゃないか
00025 p->mCount = 0;
00026 p->mEnd = 0;
00027 p->mStart = 0;
00028 */
00029 p->mSize = size;
00030 p->mOffsetOf = offsetof__;
00031 Error:
00032 dkcFree((void **)&p);
00033 return NULL;
00034 }
|
|
|
dkcQueue.c の 178 行で定義されています。
00178 {
00179 DKC_QUEUE *p;
00180 DKC_QUEUE t;
00181 size_t read;
00182 int id;
00183
00184 dkcDeserializeRead(se,&id,sizeof(id),&read);
00185 if(id != edkcSerializeIDQueue)
00186 {
00187 return NULL;
00188 }
00189 dkcDeserializeRead(se,&t,sizeof(t),&read);
00190
00191 p = dkcAllocQueue(t.mSize,t.mOffsetOf);
00192 if(NULL==p) return NULL;
00193
00194 p->mEntrance = t.mEntrance;
00195 p->mExit = t.mExit;
00196 dkcDeserializeRead(se,p->mBuffer,p->mSize,&read);
00197
00198 dkcmNOT_ASSERT(read != p->mSize);
00199
00200 return p;
00201 } |
|
|
キューをクリアする。 |
|
||||||||||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
|
DKC_DEQUEをデリート dkcDeque.c の 36 行で定義されています。 参照先 DKC_DEQUE, dkcFree(), edk_ArgumentException, と NULL.
00036 {
00037 if(NULL==ptr || NULL == (*ptr)) return edk_ArgumentException;
00038 dkcFree((void **)&(*ptr)->mBuffer);
00039 return dkcFree((void **)ptr);
00040 }
|
1.3.6