next up previous
Next: MalifFrameDiff Up: 各クラスのAPI詳細 Previous: MalibFilter

Subsections

MalibFrame

一枚の画像を表すクラスである。 実データはMalibFrameのオブジェクトは別の領域に確保されることに注意する。

記述ファイル

frame.c、frame.h

マクロ定義

MALIB_FRAME_COLORMODEL_RGB
 
RGBカラーモデル
MALIB_FRAME_COLORMODEL_GREY
 
グレースケールモデル
MALIB_FRAME_COLORMODEL_BW
 
白黒モデル
MALIB_FRAME_COLORMODEL_RGB_A
 
RGBカラーモデル(アルファ値付き)(未実装)
MALIB_FRAME_COLORMODEL_GREY_A
 
グレースケールモデル(アルファ値付き)(未実装)
MALIB_FRAME_COLORMODEL_BW_A
 
白黒モデル(アルファ値付き)(未実装)
MALIB_FRAME_DEFAULT_DEPTH_RGB
 
RGBカラーモデルの標準色深度
MALIB_FRAME_DEFAULT_DEPTH_GREY
 
グレースケールモデルの標準色深度
MALIB_FRAME_DEFAULT_DEPTH_BW
 
白黒モデルの標準色深度
MALIB_FRAME_DEFAULT_DEPTH(model)
 
引数のモデルに対応する標準色深度
MALIB_FRAME_DEFAULT_NUM_COLORS_RGB
 
RGBカラーモデルの標準色数
MALIB_FRAME_DEFAULT_NUM_COLORS_GREY
 
グレースケールモデルの標準色数
MALIB_FRAME_DEFAULT_NUM_COLORS_BW
 
白黒モデルの標準色数
MALIB_FRAME_DEFAULT_NUM_COLORS_RGB_A
 
RGBカラーモデル(アルファ値付き)の標準色数(未実装)
MALIB_FRAME_DEFAULT_NUM_COLORS_GREY_A
 
グレースケールモデル(アルファ値付き)の標準色数(未実装)
MALIB_FRAME_DEFAULT_NUM_COLORS_BW_A
 
白黒モデル(アルファ値付き)の標準色数(未実装)
MALIB_FRAME_DEFAULT_NUM_COLORS(model)
 
引数のモデルに対応する標準色数
MALIB_FRAME_BW_WHITE
 
白黒モデルにおける白色の値
MALIB_FRAME_BW_BLACK
 
白黒モデルにおける黒色の値
MALIB_FRAME_VFUNC_TBL(obj)
 
フィルタクラスのバーチャル関数テーブルに変換する
malib_frame_alloc_data_area(frame, buf)
 
フレームに対応した領域をバッファに確保する(バーチャル関数)
malib_frame_free_data_area(frame, buf)
 
バッファに確保されているフレームの領域を解放する(バーチャル関数)

メンバ変数

MalibFrameに追加されるメンバ変数は以下のとおりである。
model
 
カラーモデル情報
width
 
フレームの幅
height
 
フレームの高さ
depth
 
フレームの色深度
data
 
実データ領域へのポインタ
timestamp
 
タイムスタンプ

公開関数

malib_frame_new (unsigned int model, unsigned int width,
unsigned int height, unsigned int depth, int* data)
 
コンストラクタ。引数には順に、カラーモデル、作成するフレームの 幅と高さ、色深度、および実データが格納された領域へのポインタ を与える。タイムスタンプは呼び出した時刻が設定される
malib_frame_new_with_time (unsigned int model,
unsigned int width, unsigned int height, unsigned int depth,
int* data, time_t* timestamp)
 
コンストラクタ。引数として順に、カラーモデル、作成するフレームの 幅と高さ、色深度、実データが格納された領域へのポインタ、 およびタイムスタンプを与える
malib_frame_get_image_size (MalibFrame* frame)
 
そのフレームの持つデータ形式の種別に応じて、 実データを格納するメモリ領域に必要なサイズを返す。 単位はintとする
malib_frame_calc_data_area_size (MalibFrame* frame)
 
そのフレームの持つデータ形式の種別に応じて、総データ数を返す。 例えばRGBカラーモデルの場合は、縦×横×3、の値となる
malib_frame_get_colors (MalibFrame* frame)
 
そのフレームの持つデータ形式の種別に応じて、色数を返す
malib_frame_write_pnm (MalibFrame* frame, const char* filename)
 
引数で与える名前のファイルに対して、PNMファイル形式の データを出力する。フレームのデータ形式がRGBカラーモデルの 場合はPPM形式、グレースケールモデルの場合はPGM形式、 白黒モデルの場合はPBM形式のファイルを自動的に生成する。 なお全ての場合について、PNMファイルはバイナリ形式のファイル を生成することに注意
malib_frame_delete (MalibFrame* frame)
 
デストラクタ

非公開関数

malib_frame_clone (MalibFrame* src, MalibFrame* dest)
 
srcが示すフレームのデータをdestに対してコピーする。 ただし実イメージデータまでのコピーは行わない。また実イメージ データへのポインタのコピーも保証しないことに注意する
malib_frame_write_pnm_body (MalibFrame* frame,
int header_length, char* dst)
 
PNM形式のデータをファイルに書き出すための関数。 header_lengthはPNMファイルのヘッダ長(単位: バイト)を、 dst は書出し先のアドレスを示す。本関数は malib_frame_write_pnm()から利用される
malib_frame_alloc_data_area_ (MalibFrame* frame, MalibHolder* buf)
 
MalibFrame型のデータ領域およびそれに従うイメージ データの実領域を確保し、bufが示すバッファに割り付ける 操作を行なう。確保すべきフレームの総数はbufに従い、 確保すべきデータ領域のサイズはframeに従う
malib_frame_free_data_area_ (MalibFrame* frame, MalibHolder* buf)
 
MalibFrame型のデータ領域およびそれに従うイメージ データの実領域を解放する


next up previous
Next: MalifFrameDiff Up: 各クラスのAPI詳細 Previous: MalibFilter
Jun IIO
2001-06-14