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

dkcDefined.h File Reference

#include <stdio.h>
#include <stddef.h>

Include dependency graph for dkcDefined.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Classes

struct  dkc_Allocator

Defines

#define DKINGYO_ULONGLONG_MAX   18446744073709551615
 ULONGLONGの変数のマックス値(最大値).

#define DKINGYO_LONGLONG_MAX   9223372036854775807
 LONGLONGの変数のマックス値(最大値).

#define DKINGYO_LONGLONG_MIN   -9223372036854775808
 LONGLONGの変数のミン値(最小値).

#define DKUTIL_EXTERN   extern
 extern...

#define DKINGYO_NOT_MOUNTED   -100
 メンバ関数が定義されていない時に返す変数

#define DKINGYO_NO_DEFINED_FUNCTION   DKINGYO_NOT_MOUNTED
 DKINGYO_NOT_MOUNTEDと同じ.

#define DKUTIL_SUCCEEDED(s)   (s==edk_SUCCEEDED)
#define DKUTIL_FAILED(s)   (s)
#define DKUTIL_FAILED_BOOL(s)   (s != edk_SUCCEEDED)
#define DKUTIL_SUCCEEDED_BOOL(s)   (s==edk_SUCCEEDED)
#define MB(str)   MessageBox(NULL,str,"Message",MB_OK)
 MessageBoxを表示.

#define MB2(s, title)   MessageBox(NULL,s,title,MB_OK);
 MessageBoxを表示(タイトル指定可能バージョン).

#define ODS(str)   OutputDebugString(str)
 OutputDebugStringを使用.

#define SWAP_NUM(a, b)
 正統派 整数、実数専用スワップ

#define SM_OFFSET(p_type, field)   ((unsigned int)&(((p_type)NULL)->field))
 構造体のオフセットを求める Struct Member Offset

#define SET_RECT(rect, l, t, r, b)
 RECT構造体に入れる。.

#define NULL_CHAR_ARRAY(s)   memset((void *)s,0,sizeof(s))
 CHARの配列を初期化する。.

#define SET_VA_LIST_C(VaList, r, buff, buffnum, origin)
#define DKUTIL_SAFE_REALLOC(b, s)   realloc(b,s)
#define DKUTIL_SAFE_MALLOC(s)   malloc(s)
#define DKUTIL_SAFE_FREE(a)   if(a){free(a);a=NULL;}
#define DKUTIL_STRUCTURE_INIT(s)   memset(&(s),0,sizeof(s))
#define DKUTIL_MEMZERO(mem__, size__)   memset(mem__,0,size__)
 ZeroMemory()みたいなもの.

#define DKUTIL_ARRAY_NUMOF(array)   (sizeof(array)/sizeof(array[0]))
 配列の数を数える

#define DKUTIL_NAMELINK(X, Y)   X##Y
 名前を合わせる。

#define DKUTIL_MAKESIGNATURE(X)   DKUTIL_NAMELINK(X,__LINE__)
 シグネチャの名前を作る。

#define DKUTIL_MAKE_UINT_ID(id)
 id[in] example 'abcd' unsigned int


Typedefs

typedef void(* VOIDFUNC )(void)
typedef void(* VOIDARGFUNC )(void *)
typedef void(* VOIDARGFUNCFLAG )(void *, int)
typedef dkc_Allocator DKC_ALLOCATOR

Enumerations

enum  edkOS {
  enuWindows3_1 = 1, enuWindowsNT3_51, enuWindowsNT4_0, enuWindows95,
  enuWindows98, enuWindows2000, enuWindowsMe, enuWindowsXP,
  enuWindows_NET
}
enum  edkOSExtension {
  edkOSE_OSR2 = 1, edkOSE_edkSE, edkOSE_HomeEditon, edkOSE_Professional,
  edkOSE_DataCenter_Server, edkOSE_Advanced_Server, edkOSE_Enterprise_Server, edkOSE_Web_Server,
  edkOSE_Server
}
enum  {
  enuDKINGYO_BMPFILEHEADER_ADR = 1, enuDKINGYO_BMPCOREHEADER_ADR, enuDKINGYO_BMPINFOHEADER_ADR, enuDKINGYO_BMPPALLETE_ADR,
  enuDKINGYO_BMPGRAPH_ADR, enuDKINGYO_ISBMPFILE_EXACT_CHECK, enuDKINGYO_ISBMPFILE_CAMOUFLAGE_CHECK
}
 画像ファイルを解析する時に使う^^ More...

enum  edkVariableType {
  edkVariableUnknown = 0, edkInt, edkUInt, edkLongLong,
  edkULongLong, edkDouble, edkString
}
 変数のタイプのイナム軍 More...

enum  {
  enuSTRLENGTH_INT_DU = 1, enuSTRLENGTH_UINT_DU, enuSTRLENGTH_LONGLONG_DU, enuSTRLENGTH_ULONGLONG_DU,
  enuSTRLENGTH_DOUBLE
}
 文字列の長さの識別子。 More...

enum  edkFileSignature {
  edkfALL = 0, edkfTXT, edkfHTML, edkfXML,
  edkfAVI, edkfMPEG, edkfMOV, edkfWAV,
  edkfMIDI, edkfMP3, edkfOGG, edkfPNG,
  edkfBMP, edkfTIFF, edkfJPEG, edkfGIF,
  edkfZIP, edkfLZH, edkfGZ, edkfGCA,
  edkfDGC, edkfRAR, edkfSENTINEL
}
 まだ、変わる可能性があるので、あまり使わないで下さい^^; More...

enum  edkResult {
  edk_FAILED = -1, edk_SUCCEEDED = 0, edk_Not_Found, edk_FileNotFound,
  edk_Not_Selected, edk_ArgumentException, edk_ParsingError, edk_LogicError,
  edk_BufferOverFlow, edk_OutputBufferWasLost, edk_InputBufferWasLost, edk_FileSignatureException,
  edk_Not_Satisfactory, edk_Not_Defined_Function, edk_OutOfMemory, edk_EndProcess,
  edk_LogicException
}
enum  { enuExtendVaListLength = 256, enuDefaultExpandSize = 100 }


Define Documentation

#define DKINGYO_LONGLONG_MAX   9223372036854775807
 

LONGLONGの変数のマックス値(最大値).

#define DKINGYO_LONGLONG_MIN   -9223372036854775808
 

LONGLONGの変数のミン値(最小値).

#define DKINGYO_NO_DEFINED_FUNCTION   DKINGYO_NOT_MOUNTED
 

DKINGYO_NOT_MOUNTEDと同じ.

#define DKINGYO_NOT_MOUNTED   -100
 

メンバ関数が定義されていない時に返す変数

#define DKINGYO_ULONGLONG_MAX   18446744073709551615
 

ULONGLONGの変数のマックス値(最大値).

d金魚

Since:
2003/9/13

Note:
C language only
C++にはこんな感じの定義をするものに ios_base ってものが最近ある事を知る。

#define DKUTIL_ARRAY_NUMOF array   )     (sizeof(array)/sizeof(array[0]))
 

配列の数を数える

#define DKUTIL_EXTERN   extern
 

extern...

#define DKUTIL_FAILED  )     (s)
 

#define DKUTIL_FAILED_BOOL  )     (s != edk_SUCCEEDED)
 

#define DKUTIL_MAKE_UINT_ID id   ) 
 

Value:

((((UINT)(id) & 0xFF) << 24) |     \
                  (((UINT)(id) & 0xFF00) << 8) |    \
                  (((UINT)(id) & 0xFF0000) >> 8) |  \
                  (((UINT)(id) & 0xFF000000) >> 24))
id[in] example 'abcd' unsigned int

#define DKUTIL_MAKESIGNATURE  )     DKUTIL_NAMELINK(X,__LINE__)
 

シグネチャの名前を作る。

#define DKUTIL_MEMZERO mem__,
size__   )     memset(mem__,0,size__)
 

ZeroMemory()みたいなもの.

#define DKUTIL_NAMELINK X,
 )     X##Y
 

名前を合わせる。

#define DKUTIL_SAFE_FREE  )     if(a){free(a);a=NULL;}
 

#define DKUTIL_SAFE_MALLOC  )     malloc(s)
 

#define DKUTIL_SAFE_REALLOC b,
 )     realloc(b,s)
 

#define DKUTIL_STRUCTURE_INIT  )     memset(&(s),0,sizeof(s))
 

#define DKUTIL_SUCCEEDED  )     (s==edk_SUCCEEDED)
 

#define DKUTIL_SUCCEEDED_BOOL  )     (s==edk_SUCCEEDED)
 

#define MB str   )     MessageBox(NULL,str,"Message",MB_OK)
 

MessageBoxを表示.

#define MB2 s,
title   )     MessageBox(NULL,s,title,MB_OK);
 

MessageBoxを表示(タイトル指定可能バージョン).

#define NULL_CHAR_ARRAY  )     memset((void *)s,0,sizeof(s))
 

CHARの配列を初期化する。.

#define ODS str   )     OutputDebugString(str)
 

OutputDebugStringを使用.

#define SET_RECT rect,
l,
t,
r,
 ) 
 

Value:

{\
    rect##.left   = l;\
    rect##.top    = t;\
    rect##.right  = r;\
    rect##.bottom = b;\
}
RECT構造体に入れる。.

#define SET_VA_LIST_C VaList,
r,
buff,
buffnum,
origin   ) 
 

Value:

{\
        va_start( VaList , origin ) ;\
        r = _vsnprintf( buff ,buffnum - 1, origin , VaList );\
        if(0 > r){\
                buff[buffnum - 1] = '\0';\
        }else{\
                buff[r+1] = '\0';\
        }\
        va_end( VaList ); \
}

#define SM_OFFSET p_type,
field   )     ((unsigned int)&(((p_type)NULL)->field))
 

構造体のオフセットを求める Struct Member Offset

Note:
example UINT get_offset = SM_OFFSET(_WIN32_FIND_DATA *,dwReserved1);

#define SWAP_NUM a,
 ) 
 

Value:

a = b - a ;\
    b -= a ;\
    a += b
正統派 整数、実数専用スワップ


Typedef Documentation

typedef struct dkc_Allocator DKC_ALLOCATOR
 

typedef void(* VOIDARGFUNC)(void *)
 

typedef void(* VOIDARGFUNCFLAG)(void *,int)
 

typedef void(* VOIDFUNC)(void)
 


Enumeration Type Documentation

anonymous enum
 

画像ファイルを解析する時に使う^^

Enumeration values:
enuDKINGYO_BMPFILEHEADER_ADR 
enuDKINGYO_BMPCOREHEADER_ADR 
enuDKINGYO_BMPINFOHEADER_ADR 
enuDKINGYO_BMPPALLETE_ADR 
enuDKINGYO_BMPGRAPH_ADR 
enuDKINGYO_ISBMPFILE_EXACT_CHECK  isBmpFile()でのflagにぶち込む識別子 Bitmapファイルかどうか正確なチェックを行う。
enuDKINGYO_ISBMPFILE_CAMOUFLAGE_CHECK  isBmpFile()でのflagにぶち込む識別子 偽装ビットマップかどうか調べる。

anonymous enum
 

文字列の長さの識別子。

Enumeration values:
enuSTRLENGTH_INT_DU  INT以内の数.
enuSTRLENGTH_UINT_DU  UINT以内の数.
enuSTRLENGTH_LONGLONG_DU  LONGLONG(__int64)以内の数.
enuSTRLENGTH_ULONGLONG_DU  ULONGLONG( unsigned __int64)以内の数.
enuSTRLENGTH_DOUBLE  だヴる(floatなんていらねぇ(爆))以内の数値?

anonymous enum
 

Enumeration values:
enuExtendVaListLength  拡張型引数のバッファの追加サイズを指定する
enuDefaultExpandSize  コンテナ系のテンプレートクラスでどのくらいのサイズ(または数)を確保するかを設定する

enum edkFileSignature
 

まだ、変わる可能性があるので、あまり使わないで下さい^^;

Enumeration values:
edkfALL 
edkfTXT 
edkfHTML 
edkfXML 
edkfAVI 
edkfMPEG 
edkfMOV 
edkfWAV 
edkfMIDI 
edkfMP3 
edkfOGG 
edkfPNG 
edkfBMP 
edkfTIFF 
edkfJPEG 
edkfGIF 
edkfZIP 
edkfLZH 
edkfGZ 
edkfGCA 
edkfDGC 
edkfRAR 
edkfSENTINEL 

enum edkOS
 

Enumeration values:
enuWindows3_1 
enuWindowsNT3_51 
enuWindowsNT4_0 
enuWindows95 
enuWindows98 
enuWindows2000 
enuWindowsMe 
enuWindowsXP 
enuWindows_NET  WindowsXP??のサーバー.

enum edkOSExtension
 

Enumeration values:
edkOSE_OSR2  Windows95 OS R2.
edkOSE_edkSE  Windows98 SE.
edkOSE_HomeEditon  WindowsXP HomeEdition.
edkOSE_Professional  WindowsXP Professional Edition または、NT系のProfessional.
edkOSE_DataCenter_Server  Windows .NETのDataCenter Server.
edkOSE_Advanced_Server  NT系のAdvanced 鯖.
edkOSE_Enterprise_Server 
edkOSE_Web_Server 
edkOSE_Server  NT系の普通のサーバー.

enum edkResult
 

正式版で対応するであろうエラーID類(しかし、対応は未定・・・

Note:
edkはEnum of D Kingyoの略 (爆)
Enumeration values:
edk_FAILED  ともかく、エラーらしい。
edk_SUCCEEDED  見事 成功!!
edk_Not_Found  見つからない。
edk_FileNotFound  ファイルが見つからない。
edk_Not_Selected  選択されなかった。
edk_ArgumentException  引数に適さない値が入っていた。(引数エラー
edk_ParsingError  Parsingできなかった。.
edk_LogicError  内部的にエラーが起こった。
(まだ、その関数を使う準備が出来ていないとか, 起こりえないエラーが起こったとか, 呼び出してはいけないのに呼び出したとか。
edk_BufferOverFlow  バッファをはみ出してしまうので処理を完了できなかった。
edk_OutputBufferWasLost  出力バッファーが足りなくなった。
edk_InputBufferWasLost  入力バッファーが足りなくなった。
edk_FileSignatureException  ファイルのシグネチャが合わない
edk_Not_Satisfactory  エラーではないが、満足な処理はされなかった。意図とした結果は得られないかもしれない。
edk_Not_Defined_Function  この関数の処理は定義されていない
edk_OutOfMemory  メモリが足らなかった
edk_EndProcess  この関数で処理するのはもう終わり
edk_LogicException  別の結果だった。

enum edkVariableType
 

変数のタイプのイナム軍

Enumeration values:
edkVariableUnknown  わからない。
edkInt  int
edkUInt  UINT.
edkLongLong  LONGLONG.
edkULongLong  ULONGLONG.
edkDouble  double
edkString  std::string


Generated on Mon Apr 26 19:37:00 2004 for dkutil_c by doxygen 1.3.6