![]() |
Springhead
An open source physics engine for virtual reality, haptics and motion generation.
|
Public メソッド | |
SPR_OBJECTDEF (FIFileBinary) | |
FIFileBinary (const FIFileBinaryDesc &desc=FIFileBinaryDesc()) | |
void | LoadImp (FILoadContext *fc) |
ノードのロード. TODO: 新仕様にあわせる [詳細] | |
![]() | |
SPR_OBJECTDEF_ABST (FIFile) | |
FISdk * | GetSdk () |
bool | Load (ObjectIfs &objs, const char *fn) |
void | Load (FILoadContext *fc) |
bool | Save (const ObjectIfs &objs, const char *fn) |
void | Save (const ObjectIfs &objs, FISaveContext *sc) |
void | SetImport (ImportIf *im) |
ImportIf * | GetImport () |
void | SetDSTR (bool f) |
![]() | |
SPR_OBJECTDEF (Object) | |
クラス名の取得などの基本機能の実装 | |
ObjectIf * | GetObjectIf () |
const ObjectIf * | GetObjectIf () const |
virtual void | Print (std::ostream &os) const |
デバッグ用の表示 | |
virtual void | PrintShort (std::ostream &os) const |
virtual ObjectIf * | CreateObject (const IfInfo *info, const void *desc) |
オブジェクトの作成 | |
virtual size_t | NChildObject () const |
子オブジェクトの数 | |
virtual ObjectIf * | GetChildObject (size_t pos) |
子オブジェクトの取得 | |
virtual const ObjectIf * | GetChildObject (size_t pos) const |
virtual bool | AddChildObject (ObjectIf *o) |
子オブジェクトの追加 | |
virtual bool | DelChildObject (ObjectIf *o) |
子オブジェクトの削除 | |
virtual void | Clear () |
すべての子オブジェクトの削除とプロパティのクリア | |
virtual void | Loaded (UTLoadContext *) |
ファイルロード後に一度呼ばれる。ノードの設定に使う。 呼び出し順序に依存する処理がしたい場合は、UTLoadHandeler と UTLoadTask を使うと良い。 | |
virtual void | Setup () |
ノードの設定をするための関数 | |
virtual bool | GetDesc (void *desc) const |
デスクリプタの読み出し(コピー版) | |
virtual void | SetDesc (const void *desc) |
デスクリプタの設定 | |
virtual const void * | GetDescAddress () const |
デスクリプタの読み出し(参照版) | |
virtual size_t | GetDescSize () const |
デスクリプタのサイズ | |
virtual bool | GetState (void *state) const |
状態の読み出し(コピー版) | |
virtual const void * | GetStateAddress () const |
状態の読み出し(参照版) | |
virtual void | GetStateR (char *&state) |
状態の再帰的な読み出し | |
virtual void | SetState (const void *state) |
状態の設定 | |
virtual void | SetStateR (const char *&state) |
状態の再帰的な設定 | |
virtual bool | WriteStateR (std::ostream &fout) |
状態のファイルへの書き出し | |
virtual bool | WriteState (std::string fileName) |
virtual bool | ReadStateR (std::istream &fin) |
状態の読み込み | |
virtual bool | ReadState (std::string fileName) |
virtual size_t | GetStateSize () const |
状態のサイズ | |
virtual void | ConstructState (void *m) const |
メモリブロックを状態型に初期化 | |
virtual void | DestructState (void *m) const |
状態型をメモリブロックに戻す | |
virtual void | DumpObjectR (std::ostream &os, int level=0) const |
メモリデバッグ用。単純にツリーのオブジェクトをファイルにダンプする。 | |
Protected メソッド | |
void | LoadBlock () |
int | LoadNode () |
void | Init () |
virtual bool | IsBinary () |
バイナリフォーマットか | |
virtual void | OnSaveFileStart (FISaveContext *sc) |
ファイル開始時の処理 | |
virtual void | OnSaveNodeStart (FISaveContext *sc) |
ノード開始時の処理 | |
virtual void | OnSaveNodeEnd (FISaveContext *sc) |
ノード終了時の処理 | |
virtual void | OnSaveBlockStart (FISaveContext *sc) |
ブロック開始時の処理 | |
virtual void | OnSaveRef (FISaveContext *sc) |
virtual void | OnSaveDataEnd (FISaveContext *sc) |
データ終了時の処理 | |
virtual void | OnSaveBool (FISaveContext *sc, bool val) |
bool値の保存 | |
virtual void | OnSaveInt (FISaveContext *sc, int val) |
int値の保存 | |
virtual void | OnSaveReal (FISaveContext *sc, double val) |
real値の保存 | |
virtual void | OnSaveString (FISaveContext *sc, UTString val) |
string値の保存 | |
virtual bool | OnSaveFieldStart (FISaveContext *sc, int nElements) |
フィールド開始時の処理 falseを返した場合、フィールドはセーブされず、OnSaveFieldEnd()も呼ばれない。 | |
virtual void | OnSaveFieldEnd (FISaveContext *sc, int nElements) |
フィールド終了時の処理 | |
virtual void | OnSaveElementEnd (FISaveContext *sc, int pos, bool last) |
要素終了時の処理 | |
![]() | |
void | SaveNode (FISaveContext *sc, ObjectIf *obj) |
ノードのセーブ | |
void | SaveBlock (FISaveContext *sc) |
ブロックのセーブ | |
virtual void | OnSaveFileEnd (FISaveContext *sc) |
ファイル終了時の処理 | |
virtual void | OnSaveDataStart (FISaveContext *sc) |
データ開始時の処理 | |
virtual void | OnSaveChildStart (FISaveContext *sc) |
子オブジェクトの保存開始時の処理 | |
virtual void | OnSaveChildEnd (FISaveContext *sc) |
子オブジェクトの保存終了時の処理 | |
virtual void | OnSaveBlockEnd (FISaveContext *sc) |
ブロック終了時の処理 | |
virtual void | OnSaveElementStart (FISaveContext *sc, int pos, bool last) |
要素開始時の処理 | |
![]() | |
virtual void | PrintHeader (std::ostream &os, bool bClose) const |
開き括弧 | |
virtual void | PrintChildren (std::ostream &os) const |
子オブジェクトをPrint | |
virtual void | PrintFooter (std::ostream &os) const |
閉じ括弧 | |
virtual void | BeforeGetDesc () const |
GetDesc()の前に呼ばれる | |
virtual void | AfterSetDesc () |
SetDesc()のあとに呼ばれる | |
Protected 変数 | |
FILoadContext * | fileContext |
bool | skip |
const char * | ptr |
const char * | end |
Additional Inherited Members | |
![]() | |
bool | DSTRFlag |
FISdk * | sdk |
Import * | import |
![]() | |
static void | ConstructState (ObjectIf *o, char *&s) |
sをoのStateとして初期化する. | |
static void | DestructState (ObjectIf *o, char *&s) |
sをoのStateからメモリブロックに戻す. | |
|
virtual |
ロードしたDescからオブジェクトを作成する. オブジェクトの作成は,親オブジェクトのCreateObject(),親の親のCreateObject()と 先祖のCreateObject()を順に呼んで,作成できたところで止める. どのオブジェクトも作成できない場合は,SdkIf::CreateSdk()を呼び出す. void LoadNode();
/ ノードのロードの終了 void LoadEndNode(FILoadContext* fc);ロードの実装
FIFileを実装しています。