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

マクロ定義 | |
| #define | DKUTIL_C_BUFFER_C |
関数 | |
| DKC_BUFFER *WINAPI | dkcAllocBuffer (const void *data, size_t size) |
| バッファ領域を得る。 | |
| int WINAPI | dkcFreeBuffer (DKC_BUFFER **ptr) |
| dkcAllocBuffer()で確保したリスト領域と内部バッファを削除。dkcAllocBufferと対。 | |
| int WINAPI | dkcBufferSet (DKC_BUFFER *ptr, const void *data, size_t size) |
| int WINAPI | dkcBufferSetOffset (DKC_BUFFER *ptr, const void *data, size_t size, size_t offset) |
| バッファの先頭からoffset分の所にdataをぶち込む | |
| int WINAPI | dkcBufferGet (DKC_BUFFER *ptr, void *data, size_t size) |
| int WINAPI | dkcBufferGetOffset (DKC_BUFFER *ptr, void *data, size_t size, size_t offset) |
| int WINAPI | dkcBufferResize (DKC_BUFFER *ptr, size_t size) |
| DKC_BUFFER *WINAPI | dkcAllocBufferCopy (const DKC_BUFFER *ptr) |
| C++で言うcopy constructor. | |
| size_t WINAPI | dkcBufferSize (DKC_BUFFER *p) |
| バッファのサイズ | |
| BYTE *WINAPI | dkcBufferPointer (DKC_BUFFER *p) |
dkcBuffer.c で定義されています。
|
|
dkcBuffer.c の 7 行で定義されています。 |
|
||||||||||||
|
バッファ領域を得る。
dkcBuffer.c の 13 行で定義されています。 参照先 BYTE, DKC_BUFFER, dkcAllocate(), dkcBufferSet(), dkcFree(), dkc_Buffer::mBuff, dkc_Buffer::mSize, と NULL. 参照元 dkcAllocArrayOneByOne(), dkcAllocBufferCopy(), dkcAllocSingleListBuffer(), と dkcOpenFileWithSignature().
00013 {
00014 DKC_BUFFER *p;
00015
00016 if(0==size) return NULL;
00017
00018 p = (DKC_BUFFER *)dkcAllocate(sizeof(DKC_BUFFER));
00019 if(NULL==p) return NULL;
00020
00021
00022 p->mBuff = (BYTE *)dkcAllocate(size);
00023 if(NULL==p->mBuff) goto Error;
00024
00025 p->mSize = size;
00026
00027 if(data){
00028 if(DKUTIL_FAILED(dkcBufferSet(p,data,size))){
00029 goto Error;
00030 }
00031 }else{
00032
00033 }
00034 return p;
00035 Error:
00036 dkcFree((void **)&p);
00037 return NULL;
00038 }
|
|
|
C++で言うcopy constructor.
dkcBuffer.c の 105 行で定義されています。 参照先 DKC_BUFFER, dkcAllocBuffer(), dkcmNOT_ASSERT, dkc_Buffer::mBuff, dkc_Buffer::mSize, と NULL.
00105 {
00106 dkcmNOT_ASSERT(NULL==ptr || NULL==ptr->mBuff);
00107
00108 return dkcAllocBuffer(ptr->mBuff,ptr->mSize);
00109 }
|
|
||||||||||||||||
|
バッファの先頭からsize分データをいただく dkcBuffer.c の 71 行で定義されています。 参照先 DKC_BUFFER, dkc_memcpy(), dkc_Buffer::mBuff, と dkc_Buffer::mSize.
00071 {
00072 //if(NULL==ptr) return edk_ArgumentException;//fast
00073 return dkc_memcpy(data,size,ptr->mBuff,ptr->mSize);
00074 }
|
|
||||||||||||||||||||
|
dkcBuffer.c の 76 行で定義されています。 参照先 DKC_BUFFER, dkc_memcpy(), dkc_Buffer::mBuff, と dkc_Buffer::mSize. 参照元 dkcArrayOneByOneReference().
00077 {
00078 if(ptr->mSize < offset + size){
00079 return edk_BufferOverFlow;
00080 }
00081 return dkc_memcpy(
00082 data,size,
00083 ptr->mBuff + offset,
00084 size
00085 );
00086
00087 }
|
|
|
dkcBuffer.c の 114 行で定義されています。 参照先 BYTE, DKC_BUFFER, と dkc_Buffer::mBuff. 参照元 dkcFileWithSignatureCheckCheat(), と FileWithSignatureGetDigest().
00114 {
00115 return p->mBuff;
00116 } |
|
||||||||||||
|
バッファのサイズを変える。 dkcBuffer.c の 89 行で定義されています。 参照先 BYTE, DKC_BUFFER, dkcReallocate(), dkc_Buffer::mBuff, dkc_Buffer::mSize, と NULL. 参照元 BufferResize().
00090 {
00091 void *NewPtr;
00092 if(NULL==ptr || 0==size || NULL==ptr->mBuff) return edk_ArgumentException;
00093 if(DKUTIL_FAILED(dkcReallocate(&NewPtr,size,(void **)&(ptr->mBuff)))){
00094 return edk_FAILED;
00095 }
00096
00097 ptr->mBuff = (BYTE *)NewPtr;
00098 ptr->mSize = size;
00099
00100 return edk_SUCCEEDED;
00101 }
|
|
||||||||||||||||
|
バッファの先頭にdataをぶち込む dkcBuffer.c の 49 行で定義されています。 参照先 DKC_BUFFER, dkc_memcpy(), dkc_Buffer::mBuff, と dkc_Buffer::mSize. 参照元 dkcAllocBuffer().
00050 {
00051 //if(NULL==ptr) return edk_ArgumentException;//
00052
00053 return dkc_memcpy(ptr->mBuff,ptr->mSize,data,size);
00054 }
|
|
||||||||||||||||||||
|
バッファの先頭からoffset分の所にdataをぶち込む
dkcBuffer.c の 57 行で定義されています。 参照先 DKC_BUFFER, dkc_memcpy(), dkc_Buffer::mBuff, と dkc_Buffer::mSize. 参照元 setData().
00058 {
00059 if(ptr->mSize < offset + size){
00060 return edk_BufferOverFlow;
00061 }
00062 return dkc_memcpy(
00063 ptr->mBuff + offset,
00064 ptr->mSize - offset
00065 ,data,size);
00066 }
|
|
|
バッファのサイズ
dkcBuffer.c の 111 行で定義されています。 参照先 DKC_BUFFER, と dkc_Buffer::mSize. 参照元 BufferResize(), dkcFileWithSignatureCheckCheat(), と FileWithSignatureGetDigest().
00111 {
00112 return p->mSize;
00113 }
|
|
|
dkcAllocBuffer()で確保したリスト領域と内部バッファを削除。dkcAllocBufferと対。 DKC_BUFFERをデリート
dkcBuffer.c の 40 行で定義されています。 参照先 DKC_BUFFER, dkcFree(), と NULL. 参照元 dkcAllocArrayOneByOne(), dkcCloseFileWithSignature(), と dkcFreeArrayOneByOne().
|
1.3.6