\section{dkc\-OSIndependent.h File Reference}
\label{dkcOSIndependent_8h}\index{dkcOSIndependent.h@{dkcOSIndependent.h}}
独立系  


{\tt \#include \char`\"{}dkc\-Defined.h\char`\"{}}\par
{\tt \#include $<$direct.h$>$}\par


Include dependency graph for dkc\-OSIndependent.h:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=91pt]{dkcOSIndependent_8h__incl}
\end{center}
\end{figure}


This graph shows which files directly or indirectly include this file:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=420pt]{dkcOSIndependent_8h__dep__incl}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{CompactItemize}
\item 
struct {\bf dkc\_\-4char}
\end{CompactItemize}
\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define {\bf ULONGLONG}\ unsigned long long int
\item 
\#define {\bf LONGLONG}\ long long int
\item 
\#define {\bf ULONGLONG\_\-MAX}\ DKINGYO\_\-ULONGLONG\_\-MAX
\item 
\#define {\bf LONGLONG\_\-MAX}\ DKINGYO\_\-LONGLONG\_\-MAX
\item 
\#define {\bf LONGLONG\_\-MIN}\ DKINGYO\_\-LONGLONG\_\-MIN
\item 
\#define {\bf TRUE}\ 1
\item 
\#define {\bf FALSE}\ 0
\item 
\#define {\bf NULL}\ 0
\item 
\#define {\bf dkcd\-PATH\_\-SEP}\ '/'
\item 
\#define {\bf dkcd\-PATH\_\-SEP\_\-STR}\ \char`\"{}/\char`\"{}
\item 
\#define {\bf dkcd\-PATH\_\-LIST\_\-SEP}\ ':'
\item 
\#define {\bf dkcd\-PATH\_\-LIST\_\-SEP\_\-STR}\ \char`\"{}:\char`\"{}
\item 
\#define {\bf dkcm\-IS\_\-PATH\_\-SEP}(c)\ (dkcd\-PATH\_\-SEP==(c))
\item 
\#define {\bf dkcm\-IS\_\-INVALID\_\-FILENAME\_\-CHAR}(c)
\item 
\#define {\bf dkcm\-IS\_\-INVALID\_\-FOLDERNAME\_\-CHAR}(c)\ dkcm\-IS\_\-INVALID\_\-FILENAME\_\-CHAR(c)
\item 
\#define {\bf dkcm\-IS\_\-INVALID\_\-PATH\_\-CHAR}(c)
\item 
\#define {\bf DKC\_\-EXPORT}
\item 
\#define {\bf DKC\_\-IMPORT}
\item 
\#define {\bf DKC\_\-EXTERN}\ DKUTIL\_\-EXTERN
\item 
\#define {\bf dkcd\-MAXPATH}\ 1024
\item 
\#define {\bf dkcd\-MAXPATH\_\-LEN}\ dkcd\-MAXPATH
\item 
\#define {\bf dkcd\-MAXPATH\_\-BUFFER}\ dkcd\-MAXPATH $\ast$ 2
\begin{CompactList}\small\item\em 安全なMAX\_\-PATHのバッファのサイズ　なんかWindows2000だとこういう場合もあるらしいから \item\end{CompactList}\item 
\#define {\bf MAYBE}\ 2
\item 
\#define {\bf dkcm\-NOT\_\-ASSERT\_\-MESSAGE}(ex, mes)\ ((void)0)
\item 
\#define {\bf dkcm\-ASSERT\_\-MESSAGE}(ex, mes)\ ((void)0)
\item 
\#define {\bf dkcm\-NOT\_\-ASSERT}(ex)\ ((void)0)
\item 
\#define {\bf dkcm\-ASSERT}(ex)\ ((void)0)
\item 
\#define {\bf dkcm\-FORCE\_\-NOT\_\-ASSERT}(ex)\ ( (ex) \&\& dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,NULL) )
\item 
\#define {\bf dkcm\-FORCE\_\-ASSERT}(ex)\ ( (ex) $|$$|$ dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,NULL) )
\item 
\#define {\bf dkcm\-FORCE\_\-NOT\_\-ASSERT\_\-MESSAGE}(ex, mes)\ ( (ex) \&\& dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,mes) )
\item 
\#define {\bf dkcm\-FORCE\_\-ASSERT\_\-MESSAGE}(ex, mes)\ ( (ex) $|$$|$ dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,mes) )
\end{CompactItemize}
\subsection*{Typedefs}
\begin{CompactItemize}
\item 
typedef void $\ast$($\ast$ {\bf DKC\_\-REALLOC\_\-F\_\-TYPE} )(void $\ast$, size\_\-t)
\item 
typedef int {\bf BOOL}
\item 
typedef unsigned char {\bf BYTE}
\item 
typedef {\bf dkc\_\-4char} {\bf DKC\_\-4CHAR}
\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
DKC\_\-EXTERN {\bf BOOL} WINAPI {\bf dkc\-Is\-Native\-Path\-String} (const char $\ast$s, size\_\-t size)
\begin{CompactList}\small\item\em FALSEならNativeなファイルパスではない。. \item\end{CompactList}\item 
DKC\_\-EXTERN size\_\-t {\bf dkc\-Reallocate\-Size\-Function} (size\_\-t Old\-Size, size\_\-t Expand\-Size)
\item 
DKC\_\-EXTERN void $\ast$WINAPIV {\bf dkc\-Allocate} (size\_\-t size)
\item 
DKC\_\-EXTERN int WINAPIV {\bf dkc\-Free} (void $\ast$$\ast$p)
\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Reallocate} (void $\ast$$\ast$New\-Ptr, size\_\-t New\-Size, void $\ast$$\ast$Old\-Ptr)
\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Reallocate\-Ex} ({\bf DKC\_\-REALLOC\_\-F\_\-TYPE} your\_\-realloc, void $\ast$$\ast$New\-Ptr, size\_\-t New\-Size, void $\ast$$\ast$Old\-Ptr)
\begin{CompactList}\small\item\em edk\_\-SUCCEEDEDだったら成功 \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Reallocate\-Auto\-Expand} ({\bf DKC\_\-REALLOC\_\-F\_\-TYPE} your\_\-realloc, void $\ast$$\ast$New\-Ptr, void $\ast$$\ast$Old\-Ptr, size\_\-t Old\-Size, size\_\-t $\ast$reallocated\_\-size)
\item 
DKC\_\-EXTERN void WINAPI {\bf dkc\-Swap} (void $\ast$p1, void $\ast$p2, size\_\-t size)
\item 
DKC\_\-EXTERN void WINAPI {\bf dkc\-Swap\-Fast} (void $\ast$p1, void $\ast$p2, size\_\-t size)
\item 
DKC\_\-EXTERN void WINAPI {\bf dkc\-Swap64} (ULONGLONG $\ast$p1, ULONGLONG $\ast$p2, size\_\-t size)
\item 
DKC\_\-EXTERN {\bf BOOL} {\bf dkc\-Is\_\-foepn\_\-mode} (const char $\ast$s)
\begin{CompactList}\small\item\em fopenの時の第二引数が有効な値かどうか調べる。 \item\end{CompactList}\item 
DKC\_\-EXTERN FILE $\ast$WINAPI {\bf dkc\-FOpen} (const char $\ast$filename, const char $\ast$mode)
\begin{CompactList}\small\item\em fopenのラッパー \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-FClose} (FILE $\ast$$\ast$ptr)
\begin{CompactList}\small\item\em fcloseのラッパー \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Save\-Binary} (const void $\ast$data, size\_\-t size, const char $\ast$fname)
\begin{CompactList}\small\item\em fopenのファイル関数を使ってバイナリセーブを行う。 \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Load\-Binary} (void $\ast$data, size\_\-t size, const char $\ast$fname, size\_\-t $\ast$readsize)
\begin{CompactList}\small\item\em バイナリデータをメモリに読み込む。dkc\-Save\-Binary()と対 \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Save\-Text} (const char $\ast$text, size\_\-t length, const char $\ast$fname)
\begin{CompactList}\small\item\em fopenでテキストセーブを行う \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Load\-Text} (char $\ast$text, size\_\-t length, const char $\ast$fname, size\_\-t $\ast$readsize)
\begin{CompactList}\small\item\em テキストデータをメモリに読み込む。dkc\-Save\-Text()と対 \item\end{CompactList}\item 
DKC\_\-EXTERN {\bf BOOL} WINAPI {\bf dkc\-Create\-Empty\-File} (const char $\ast$filename)
\begin{CompactList}\small\item\em 空ファイルを作る。 \item\end{CompactList}\item 
DKC\_\-EXTERN int WINAPI {\bf dkc\-Error\-Message} (const char $\ast$expression, const char $\ast$filename, size\_\-t line, const char $\ast$message,...)
\item 
DKC\_\-EXTERN const char $\ast$ {\bf dkc\-Get\-Path\-Sep} ()
\begin{CompactList}\small\item\em path separatorの入った文字列(1byte毎にpath separatorの文字定数が入っている)をゲット \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
独立系 

\begin{Desc}
\item[Note:]at joke : Don't forget \char`\"{}Independence Day\char`\"{} of the Movie...$^\wedge$$^\wedge$;\end{Desc}


\subsection{Define Documentation}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!DKC_EXPORT@{DKC\_\-EXPORT}}
\index{DKC_EXPORT@{DKC\_\-EXPORT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define DKC\_\-EXPORT}\label{dkcOSIndependent_8h_a16}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!DKC_EXTERN@{DKC\_\-EXTERN}}
\index{DKC_EXTERN@{DKC\_\-EXTERN}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define DKC\_\-EXTERN\ DKUTIL\_\-EXTERN}\label{dkcOSIndependent_8h_a18}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!DKC_IMPORT@{DKC\_\-IMPORT}}
\index{DKC_IMPORT@{DKC\_\-IMPORT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define DKC\_\-IMPORT}\label{dkcOSIndependent_8h_a17}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdMAXPATH@{dkcdMAXPATH}}
\index{dkcdMAXPATH@{dkcdMAXPATH}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-MAXPATH\ 1024}\label{dkcOSIndependent_8h_a19}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdMAXPATH_BUFFER@{dkcdMAXPATH\_\-BUFFER}}
\index{dkcdMAXPATH_BUFFER@{dkcdMAXPATH\_\-BUFFER}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-MAXPATH\_\-BUFFER\ dkcd\-MAXPATH $\ast$ 2}\label{dkcOSIndependent_8h_a21}


安全なMAX\_\-PATHのバッファのサイズ　なんかWindows2000だとこういう場合もあるらしいから 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdMAXPATH_LEN@{dkcdMAXPATH\_\-LEN}}
\index{dkcdMAXPATH_LEN@{dkcdMAXPATH\_\-LEN}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-MAXPATH\_\-LEN\ dkcd\-MAXPATH}\label{dkcOSIndependent_8h_a20}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdPATH_LIST_SEP@{dkcdPATH\_\-LIST\_\-SEP}}
\index{dkcdPATH_LIST_SEP@{dkcdPATH\_\-LIST\_\-SEP}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-PATH\_\-LIST\_\-SEP\ ':'}\label{dkcOSIndependent_8h_a10}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdPATH_LIST_SEP_STR@{dkcdPATH\_\-LIST\_\-SEP\_\-STR}}
\index{dkcdPATH_LIST_SEP_STR@{dkcdPATH\_\-LIST\_\-SEP\_\-STR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-PATH\_\-LIST\_\-SEP\_\-STR\ \char`\"{}:\char`\"{}}\label{dkcOSIndependent_8h_a11}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdPATH_SEP@{dkcdPATH\_\-SEP}}
\index{dkcdPATH_SEP@{dkcdPATH\_\-SEP}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-PATH\_\-SEP\ '/'}\label{dkcOSIndependent_8h_a8}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcdPATH_SEP_STR@{dkcdPATH\_\-SEP\_\-STR}}
\index{dkcdPATH_SEP_STR@{dkcdPATH\_\-SEP\_\-STR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcd\-PATH\_\-SEP\_\-STR\ \char`\"{}/\char`\"{}}\label{dkcOSIndependent_8h_a9}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmASSERT@{dkcmASSERT}}
\index{dkcmASSERT@{dkcmASSERT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-ASSERT(ex)\ ((void)0)}\label{dkcOSIndependent_8h_a26}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmASSERT_MESSAGE@{dkcmASSERT\_\-MESSAGE}}
\index{dkcmASSERT_MESSAGE@{dkcmASSERT\_\-MESSAGE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-ASSERT\_\-MESSAGE(ex, mes)\ ((void)0)}\label{dkcOSIndependent_8h_a24}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmFORCE_ASSERT@{dkcmFORCE\_\-ASSERT}}
\index{dkcmFORCE_ASSERT@{dkcmFORCE\_\-ASSERT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-FORCE\_\-ASSERT(ex)\ ( (ex) $|$$|$ dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,NULL) )}\label{dkcOSIndependent_8h_a28}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmFORCE_ASSERT_MESSAGE@{dkcmFORCE\_\-ASSERT\_\-MESSAGE}}
\index{dkcmFORCE_ASSERT_MESSAGE@{dkcmFORCE\_\-ASSERT\_\-MESSAGE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-FORCE\_\-ASSERT\_\-MESSAGE(ex, mes)\ ( (ex) $|$$|$ dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,mes) )}\label{dkcOSIndependent_8h_a30}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmFORCE_NOT_ASSERT@{dkcmFORCE\_\-NOT\_\-ASSERT}}
\index{dkcmFORCE_NOT_ASSERT@{dkcmFORCE\_\-NOT\_\-ASSERT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-FORCE\_\-NOT\_\-ASSERT(ex)\ ( (ex) \&\& dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,NULL) )}\label{dkcOSIndependent_8h_a27}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmFORCE_NOT_ASSERT_MESSAGE@{dkcmFORCE\_\-NOT\_\-ASSERT\_\-MESSAGE}}
\index{dkcmFORCE_NOT_ASSERT_MESSAGE@{dkcmFORCE\_\-NOT\_\-ASSERT\_\-MESSAGE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-FORCE\_\-NOT\_\-ASSERT\_\-MESSAGE(ex, mes)\ ( (ex) \&\& dkc\-Error\-Message(\#ex,\_\-\_\-FILE\_\-\_\-,\_\-\_\-LINE\_\-\_\-,mes) )}\label{dkcOSIndependent_8h_a29}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmIS_INVALID_FILENAME_CHAR@{dkcmIS\_\-INVALID\_\-FILENAME\_\-CHAR}}
\index{dkcmIS_INVALID_FILENAME_CHAR@{dkcmIS\_\-INVALID\_\-FILENAME\_\-CHAR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-IS\_\-INVALID\_\-FILENAME\_\-CHAR(c)}\label{dkcOSIndependent_8h_a13}


{\bf Value:}

\footnotesize\begin{verbatim}( ((c) =='\\') || ((c)=='/') || ((c)=='*') || ((c)=='?') \
                || ((c)== '"') || ((c) == '<') || ((c) == '>') || ((c) == '|') )
\end{verbatim}\normalsize 
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmIS_INVALID_FOLDERNAME_CHAR@{dkcmIS\_\-INVALID\_\-FOLDERNAME\_\-CHAR}}
\index{dkcmIS_INVALID_FOLDERNAME_CHAR@{dkcmIS\_\-INVALID\_\-FOLDERNAME\_\-CHAR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-IS\_\-INVALID\_\-FOLDERNAME\_\-CHAR(c)\ dkcm\-IS\_\-INVALID\_\-FILENAME\_\-CHAR(c)}\label{dkcOSIndependent_8h_a14}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmIS_INVALID_PATH_CHAR@{dkcmIS\_\-INVALID\_\-PATH\_\-CHAR}}
\index{dkcmIS_INVALID_PATH_CHAR@{dkcmIS\_\-INVALID\_\-PATH\_\-CHAR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-IS\_\-INVALID\_\-PATH\_\-CHAR(c)}\label{dkcOSIndependent_8h_a15}


{\bf Value:}

\footnotesize\begin{verbatim}( ( (c)=='\\') || ((c)=='*') || ((c)=='?') || ((c)== '"') || \
        ((c) == '<') || ((c) == '>') || ((c) == '|') )
\end{verbatim}\normalsize 
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmIS_PATH_SEP@{dkcmIS\_\-PATH\_\-SEP}}
\index{dkcmIS_PATH_SEP@{dkcmIS\_\-PATH\_\-SEP}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-IS\_\-PATH\_\-SEP(c)\ (dkcd\-PATH\_\-SEP==(c))}\label{dkcOSIndependent_8h_a12}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmNOT_ASSERT@{dkcmNOT\_\-ASSERT}}
\index{dkcmNOT_ASSERT@{dkcmNOT\_\-ASSERT}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-NOT\_\-ASSERT(ex)\ ((void)0)}\label{dkcOSIndependent_8h_a25}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcmNOT_ASSERT_MESSAGE@{dkcmNOT\_\-ASSERT\_\-MESSAGE}}
\index{dkcmNOT_ASSERT_MESSAGE@{dkcmNOT\_\-ASSERT\_\-MESSAGE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dkcm\-NOT\_\-ASSERT\_\-MESSAGE(ex, mes)\ ((void)0)}\label{dkcOSIndependent_8h_a23}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!FALSE@{FALSE}}
\index{FALSE@{FALSE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define FALSE\ 0}\label{dkcOSIndependent_8h_a6}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!LONGLONG@{LONGLONG}}
\index{LONGLONG@{LONGLONG}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define LONGLONG\ long long int}\label{dkcOSIndependent_8h_a1}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!LONGLONG_MAX@{LONGLONG\_\-MAX}}
\index{LONGLONG_MAX@{LONGLONG\_\-MAX}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define LONGLONG\_\-MAX\ DKINGYO\_\-LONGLONG\_\-MAX}\label{dkcOSIndependent_8h_a3}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!LONGLONG_MIN@{LONGLONG\_\-MIN}}
\index{LONGLONG_MIN@{LONGLONG\_\-MIN}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define LONGLONG\_\-MIN\ DKINGYO\_\-LONGLONG\_\-MIN}\label{dkcOSIndependent_8h_a4}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!MAYBE@{MAYBE}}
\index{MAYBE@{MAYBE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MAYBE\ 2}\label{dkcOSIndependent_8h_a22}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!NULL@{NULL}}
\index{NULL@{NULL}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define NULL\ 0}\label{dkcOSIndependent_8h_a7}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!TRUE@{TRUE}}
\index{TRUE@{TRUE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define TRUE\ 1}\label{dkcOSIndependent_8h_a5}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!ULONGLONG@{ULONGLONG}}
\index{ULONGLONG@{ULONGLONG}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define ULONGLONG\ unsigned long long int}\label{dkcOSIndependent_8h_a0}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!ULONGLONG_MAX@{ULONGLONG\_\-MAX}}
\index{ULONGLONG_MAX@{ULONGLONG\_\-MAX}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define ULONGLONG\_\-MAX\ DKINGYO\_\-ULONGLONG\_\-MAX}\label{dkcOSIndependent_8h_a2}




\subsection{Typedef Documentation}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!BOOL@{BOOL}}
\index{BOOL@{BOOL}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef int {\bf BOOL}}\label{dkcOSIndependent_8h_a32}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!BYTE@{BYTE}}
\index{BYTE@{BYTE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned char {\bf BYTE}}\label{dkcOSIndependent_8h_a33}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!DKC_4CHAR@{DKC\_\-4CHAR}}
\index{DKC_4CHAR@{DKC\_\-4CHAR}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef struct {\bf dkc\_\-4char} {\bf DKC\_\-4CHAR}}\label{dkcOSIndependent_8h_a34}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!DKC_REALLOC_F_TYPE@{DKC\_\-REALLOC\_\-F\_\-TYPE}}
\index{DKC_REALLOC_F_TYPE@{DKC\_\-REALLOC\_\-F\_\-TYPE}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}typedef void $\ast$($\ast$ {\bf DKC\_\-REALLOC\_\-F\_\-TYPE})(void $\ast$, size\_\-t)}\label{dkcOSIndependent_8h_a31}




\subsection{Function Documentation}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcAllocate@{dkcAllocate}}
\index{dkcAllocate@{dkcAllocate}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN void$\ast$ WINAPIV dkc\-Allocate (size\_\-t {\em size})}\label{dkcOSIndependent_8h_a37}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcCreateEmptyFile@{dkcCreateEmptyFile}}
\index{dkcCreateEmptyFile@{dkcCreateEmptyFile}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN {\bf BOOL} WINAPI dkc\-Create\-Empty\-File (const char $\ast$ {\em filename})}\label{dkcOSIndependent_8h_a52}


空ファイルを作る。 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcErrorMessage@{dkcErrorMessage}}
\index{dkcErrorMessage@{dkcErrorMessage}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Error\-Message (const char $\ast$ {\em expression}, const char $\ast$ {\em filename}, size\_\-t {\em line}, const char $\ast$ {\em message}, ...)}\label{dkcOSIndependent_8h_a53}


\begin{Desc}
\item[Returns:]almost {\bf TRUE(1)}{\rm (p.\,\pageref{dkcOSIndependent_8h_a5})} \end{Desc}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcFClose@{dkcFClose}}
\index{dkcFClose@{dkcFClose}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-FClose (FILE $\ast$$\ast$ {\em ptr})}\label{dkcOSIndependent_8h_a47}


fcloseのラッパー 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcFOpen@{dkcFOpen}}
\index{dkcFOpen@{dkcFOpen}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN FILE$\ast$ WINAPI dkc\-FOpen (const char $\ast$ {\em filename}, const char $\ast$ {\em mode})}\label{dkcOSIndependent_8h_a46}


fopenのラッパー 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcFree@{dkcFree}}
\index{dkcFree@{dkcFree}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPIV dkc\-Free (void $\ast$$\ast$ {\em p})}\label{dkcOSIndependent_8h_a38}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcGetPathSep@{dkcGetPathSep}}
\index{dkcGetPathSep@{dkcGetPathSep}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN const char$\ast$ dkc\-Get\-Path\-Sep ()}\label{dkcOSIndependent_8h_a54}


path separatorの入った文字列(1byte毎にpath separatorの文字定数が入っている)をゲット 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcIs_foepn_mode@{dkcIs\_\-foepn\_\-mode}}
\index{dkcIs_foepn_mode@{dkcIs\_\-foepn\_\-mode}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN {\bf BOOL} dkc\-Is\_\-foepn\_\-mode (const char $\ast$ {\em s})}\label{dkcOSIndependent_8h_a45}


fopenの時の第二引数が有効な値かどうか調べる。 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcIsNativePathString@{dkcIsNativePathString}}
\index{dkcIsNativePathString@{dkcIsNativePathString}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN {\bf BOOL} WINAPI dkc\-Is\-Native\-Path\-String (const char $\ast$ {\em s}, size\_\-t {\em size})}\label{dkcOSIndependent_8h_a35}


FALSEならNativeなファイルパスではない。. 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcLoadBinary@{dkcLoadBinary}}
\index{dkcLoadBinary@{dkcLoadBinary}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Load\-Binary (void $\ast$ {\em data}, size\_\-t {\em size}, const char $\ast$ {\em fname}, size\_\-t $\ast$ {\em readsize})}\label{dkcOSIndependent_8h_a49}


バイナリデータをメモリに読み込む。dkc\-Save\-Binary()と対 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcLoadText@{dkcLoadText}}
\index{dkcLoadText@{dkcLoadText}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Load\-Text (char $\ast$ {\em text}, size\_\-t {\em length}, const char $\ast$ {\em fname}, size\_\-t $\ast$ {\em readsize})}\label{dkcOSIndependent_8h_a51}


テキストデータをメモリに読み込む。dkc\-Save\-Text()と対 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcReallocate@{dkcReallocate}}
\index{dkcReallocate@{dkcReallocate}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Reallocate (void $\ast$$\ast$ {\em New\-Ptr}, size\_\-t {\em New\-Size}, void $\ast$$\ast$ {\em Old\-Ptr})}\label{dkcOSIndependent_8h_a39}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcReallocateAutoExpand@{dkcReallocateAutoExpand}}
\index{dkcReallocateAutoExpand@{dkcReallocateAutoExpand}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Reallocate\-Auto\-Expand ({\bf DKC\_\-REALLOC\_\-F\_\-TYPE} {\em your\_\-realloc}, void $\ast$$\ast$ {\em New\-Ptr}, void $\ast$$\ast$ {\em Old\-Ptr}, size\_\-t {\em Old\-Size}, size\_\-t $\ast$ {\em reallocated\_\-size})}\label{dkcOSIndependent_8h_a41}


\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em your\_\-realloc\mbox{[}in\mbox{]}}]reallocする関数 \item[{\em New\-Ptr\mbox{[}out\mbox{]}}]新しいメモリ空間アドレス \item[{\em Old\-Ptr\mbox{[}in\mbox{]}\mbox{[}out\mbox{]}}]古いメモリ空間アドレス。関数が成功すると、Old\-Ptrは無効になる \item[{\em Old\-Size\mbox{[}in\mbox{]}}]Old\-Ptrのサイズ \item[{\em reallocated\_\-size\mbox{[}out\mbox{]}}]確保したサイズ \end{description}
\end{Desc}
\begin{Desc}
\item[Note:]メモリサイズ拡張専用 \end{Desc}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcReallocateEx@{dkcReallocateEx}}
\index{dkcReallocateEx@{dkcReallocateEx}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Reallocate\-Ex ({\bf DKC\_\-REALLOC\_\-F\_\-TYPE} {\em your\_\-realloc}, void $\ast$$\ast$ {\em New\-Ptr}, size\_\-t {\em New\-Size}, void $\ast$$\ast$ {\em Old\-Ptr})}\label{dkcOSIndependent_8h_a40}


edk\_\-SUCCEEDEDだったら成功 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em your\_\-realloc\mbox{[}in\mbox{]}}]reallocする関数 \item[{\em New\-Ptr\mbox{[}out\mbox{]}}]新しいメモリ空間アドレス \item[{\em New\-Size\mbox{[}in\mbox{]}}]新しいメモリ空間アドレスのサイズ。 \item[{\em Old\-Ptr\mbox{[}in\mbox{]}\mbox{[}out\mbox{]}}]古いメモリ空間アドレス。関数が成功すると、Old\-Ptrは無効になる \item[{\em Old\-Size\mbox{[}in\mbox{]}}]Old\-Ptrのサイズ \end{description}
\end{Desc}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcReallocateSizeFunction@{dkcReallocateSizeFunction}}
\index{dkcReallocateSizeFunction@{dkcReallocateSizeFunction}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN size\_\-t dkc\-Reallocate\-Size\-Function (size\_\-t {\em Old\-Size}, size\_\-t {\em Expand\-Size})}\label{dkcOSIndependent_8h_a36}


\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcSaveBinary@{dkcSaveBinary}}
\index{dkcSaveBinary@{dkcSaveBinary}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Save\-Binary (const void $\ast$ {\em data}, size\_\-t {\em size}, const char $\ast$ {\em fname})}\label{dkcOSIndependent_8h_a48}


fopenのファイル関数を使ってバイナリセーブを行う。 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcSaveText@{dkcSaveText}}
\index{dkcSaveText@{dkcSaveText}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN int WINAPI dkc\-Save\-Text (const char $\ast$ {\em text}, size\_\-t {\em length}, const char $\ast$ {\em fname})}\label{dkcOSIndependent_8h_a50}


fopenでテキストセーブを行う 

\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcSwap@{dkcSwap}}
\index{dkcSwap@{dkcSwap}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN void WINAPI dkc\-Swap (void $\ast$ {\em p1}, void $\ast$ {\em p2}, size\_\-t {\em size})}\label{dkcOSIndependent_8h_a42}


演算でSwapさせる。SWAP\_\-NUM()ソ}クロを参照。 \index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcSwap64@{dkcSwap64}}
\index{dkcSwap64@{dkcSwap64}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN void WINAPI dkc\-Swap64 (ULONGLONG $\ast$ {\em p1}, ULONGLONG $\ast$ {\em p2}, size\_\-t {\em size})}\label{dkcOSIndependent_8h_a44}


\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em p1\mbox{[}in\mbox{]}}]ULONGLONG $\ast$のバッファへのポインタ \item[{\em p2\mbox{[}in\mbox{]}}]ULONGLONG $\ast$のバッファへのポインタ \item[{\em size\mbox{[}in\mbox{]}}]p1,p2バッファのサイズ \end{description}
\end{Desc}
\begin{Desc}
\item[Note:]p1,p2共にULONGLONG $\ast$に強制型キャストしてください。 \end{Desc}
\index{dkcOSIndependent.h@{dkc\-OSIndependent.h}!dkcSwapFast@{dkcSwapFast}}
\index{dkcSwapFast@{dkcSwapFast}!dkcOSIndependent.h@{dkc\-OSIndependent.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DKC\_\-EXTERN void WINAPI dkc\-Swap\-Fast (void $\ast$ {\em p1}, void $\ast$ {\em p2}, size\_\-t {\em size})}\label{dkcOSIndependent_8h_a43}


どんな方法でもいいからともかく速くSwapさせる。 \begin{Desc}
\item[Note:]size分のメモリを動的確保してスワップします。 \end{Desc}
