構造体 ML_Backend

環境固有でありうるサーフェイスやフォントを扱う、バックエンドです。 [詳細]

#include <aliceml_backend.h>


Public メソッド

void *ALICEMLCALL * CreateSurface (ML_Message *message, int width, int height)
 バックエンド固有のサーフェイスを作成します。
 void (ALICEMLCALL *DestroySurface)(void *surface)
 バックエンド固有のサーフェイスを破棄します。
 int (ALICEMLCALL *GetSurfaceSize)(void *surface
 サーフェイスのサイズを取得します。
 int (ALICEMLCALL *BlitSurface)(void *dst
 サーフェイス間の転送を行います。
 int (ALICEMLCALL *BlitSurfaceWithAlpha)(void *dst
 サーフェイス間の転送を行います。
void *ALICEMLCALL * CreateFont (ML_Message *message, const ML_SimpleFont *font)
 ML_Fontからバックエンド固有のフォントを作成します。
 void (ALICEMLCALL *DestroyFont)(void *abstract_font)
 バックエンド固有のフォントを解放します。
void *ALICEMLCALL * CreateTextSurfaceUCS4 (ML_Message *message, const ML_SimpleFont *font, ML_char32 ucs4)
 文字サーフェイスを作成します。
 int (ALICEMLCALL *GetTextSurfaceSizeUCS4)(const ML_SimpleFont *font
 文字サーフェイスのサイズを取得します。
void *ALICEMLCALL * CreateTextSurfaceUTF16 (ML_Message *message, const ML_SimpleFont *font, const ML_char16 *utf16)
 文字サーフェイスを作成します。
 int (ALICEMLCALL *GetTextSurfaceSizeUTF16)(const ML_SimpleFont *font
 文字サーフェイスのサイズを取得します。
void *ALICEMLCALL * CreateTextSurfaceUTF8 (ML_Message *message, const ML_SimpleFont *font, const ML_char8 *utf8)
 文字サーフェイスを作成します。
 int (ALICEMLCALL *GetTextSurfaceSizeUTF8)(const ML_SimpleFont *font
 文字サーフェイスのサイズを取得します。

変数

int * width
int int * height
int x
int int y
int int ML_Rectrect
int int ML_Rect void * src
int int ML_Rectrect
int int ML_Rect void * src
int int ML_Rect void int alpha
ML_char32 ucs4
ML_char32 int * w
ML_char32 int int * h
const ML_char16utf16
const ML_char16 int * w
const ML_char16 int int * h
const ML_char8utf8
const ML_char8 int * w
const ML_char8 int int * h


説明

環境固有でありうるサーフェイスやフォントを扱う、バックエンドです。

CreateTextSurfaceXXX, GetTextSurfaceSizeXXX
に関してはどれか一つ実装すれば、 適切に処理されるようになっています。


関数

void* ALICEMLCALL* ML_Backend::CreateFont ( ML_Message message,
const ML_SimpleFont font 
)

ML_Fontからバックエンド固有のフォントを作成します。

void* ALICEMLCALL* ML_Backend::CreateSurface ( ML_Message message,
int  width,
int  height 
)

バックエンド固有のサーフェイスを作成します。

message が持つ destination はピクセルフォーマットなどを決定します。

void* ALICEMLCALL* ML_Backend::CreateTextSurfaceUCS4 ( ML_Message message,
const ML_SimpleFont font,
ML_char32  ucs4 
)

文字サーフェイスを作成します。

ucs4にはUCS4ユニコード文字を指定します。

void* ALICEMLCALL* ML_Backend::CreateTextSurfaceUTF16 ( ML_Message message,
const ML_SimpleFont font,
const ML_char16 utf16 
)

文字サーフェイスを作成します。

utf16にはUTF16でエンコーディングされたユニコード1文字を指定します。

void* ALICEMLCALL* ML_Backend::CreateTextSurfaceUTF8 ( ML_Message message,
const ML_SimpleFont font,
const ML_char8 utf8 
)

文字サーフェイスを作成します。

utf8にはUTF8でエンコーディングされたユニコード1文字を指定します。

ML_Backend::int ( ALICEMLCALL *  GetTextSurfaceSizeUTF8  )  const

文字サーフェイスのサイズを取得します。

utf8にはUTF8でエンコーディングされたユニコード1文字を指定します。

ML_Backend::int ( ALICEMLCALL *  GetTextSurfaceSizeUTF16  )  const

文字サーフェイスのサイズを取得します。

utf16にはUTF16でエンコーディングされたユニコード1文字を指定します。

ML_Backend::int ( ALICEMLCALL *  GetTextSurfaceSizeUCS4  )  const

文字サーフェイスのサイズを取得します。

ucs4にはUCS4ユニコード文字を指定します。

ML_Backend::int ( ALICEMLCALL *  BlitSurfaceWithAlpha  ) 

サーフェイス間の転送を行います。

ML_Backend::int ( ALICEMLCALL *  BlitSurface  ) 

サーフェイス間の転送を行います。

ML_Backend::int ( ALICEMLCALL *  GetSurfaceSize  ) 

サーフェイスのサイズを取得します。

ML_Backend::void ( ALICEMLCALL *  DestroyFont  ) 

バックエンド固有のフォントを解放します。

ML_Backend::void ( ALICEMLCALL *  DestroySurface  ) 

バックエンド固有のサーフェイスを破棄します。

CreateTextSurfaceXXX
によって作られたサーフェイスもこの関数で解放します。


構造体

int int ML_Rect void int ML_Backend::alpha

const ML_char8 int int* ML_Backend::h

const ML_char16 int int* ML_Backend::h

ML_char32 int int* ML_Backend::h

int int* ML_Backend::height

int int ML_Rect* ML_Backend::rect

int int ML_Rect* ML_Backend::rect

int int ML_Rect void* ML_Backend::src

int int ML_Rect void* ML_Backend::src

ML_char32 ML_Backend::ucs4

const ML_char16* ML_Backend::utf16

const ML_char8* ML_Backend::utf8

const ML_char8 int* ML_Backend::w

const ML_char16 int* ML_Backend::w

ML_char32 int* ML_Backend::w

int* ML_Backend::width

int ML_Backend::x

int int ML_Backend::y


この構造体の説明は次のファイルから生成されました:
AliceMLに対してSat Apr 21 13:06:20 2007に生成されました。  doxygen 1.4.7