メインページ | アルファベット順一覧 | 構成 | ファイル一覧 | 構成メンバ | ファイルメンバ | 関連ページ

# dkcUniqueID.h

`#include "dkcOSIndependent.h"`
`#include "dkcMemoryStream.h"`

dkcUniqueID.hのインクルード依存関係図

このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。

ソースコードを見る。

## 構成
struct | dkc_UniqueID
## 型定義
typedef dkc_UniqueID | DKC_UNIQUE_ID
## 関数
DKC_EXTERN DKC_UNIQUE_ID *WINAPI | dkcAllocUniqueID (void)
| IDを生成するものを取得。
DKC_EXTERN int WINAPI | dkcFreeUniqueID (DKC_UNIQUE_ID **ptr)
DKC_EXTERN int WINAPI | dkcUniqueIDGet (DKC_UNIQUE_ID *ptr)
DKC_EXTERN void | dkcUniqueIDReturn (DKC_UNIQUE_ID *ptr, int id)

## 説明

覚え書き:
  glibのクォークっぽく？でも、イチイチコーディングするの面倒…とりあえず、あと5年くらいは実装しないつもり

2004年度：データからUniqueなIDを生成するものを作ろうと思っていたが、すでに作る気無し。どちら様かソースを寄付していただけないでしょうか？ dkcUniqueID.h で定義されています。

## 型定義

typedef struct dkc_UniqueID DKC_UNIQUE_ID

| ユニークなIDを生成する機構の保存データ構造

## 関数

DKC_EXTERN DKC_UNIQUE_ID* WINAPI dkcAllocUniqueID | ( | void |  | ) |

| IDを生成するものを取得。 dkcUniqueID.c の 14 行で定義されています。 参照先 dkcAllocate(), dkcAllocMemoryStream(), dkcFree(), dkc_UniqueID::mStream, と NULL.
    00014                                              {
    00015     DKC_UNIQUE_ID *p;
    00016     p = dkcAllocate(sizeof(DKC_UNIQUE_ID));
    00017     if(NULL==p) return NULL;
    00018
    00019     p->mStream = dkcAllocMemoryStream(sizeof(int) * 100);
    00020     if(NULL==p->mStream) goto Error;
    00021
    00022     return p;
    00023 Error:
    00024     dkcFree((void **)&p);
    00025     return NULL;
    00026 }

DKC_EXTERN int WINAPI dkcFreeUniqueID | ( | DKC_UNIQUE_ID ** | ptr | ) |

| DKC_UNIQUE_IDをデリート 覚え書き: 必ず使用したあとはこれを呼んでください。 dkcUniqueID.c の 28 行で定義されています。 参照先 dkcFree(), dkcFreeMemoryStream(), と NULL.
    00028                                                {
    00029     if(NULL==ptr || *ptr==NULL || NULL==(*ptr)->mStream)
    00030         return edk_ArgumentException;
    00031
    00032     dkcFreeMemoryStream(&((*ptr)->mStream));
    00033     return dkcFree((void **)ptr);
    00034 }

DKC_EXTERN int WINAPI dkcUniqueIDGet | ( | DKC_UNIQUE_ID * | ptr | ) |

| 覚え書き:

DKC_EXTERN void dkcUniqueIDReturn | ( | DKC_UNIQUE_ID * | ptr,
|  | int | id
| ) |

  | 引数:
  | id[in] | 同じidを二回解放するとバグリます。