Springhead
An open source physics engine for virtual reality, haptics and motion generation.
構造体 FWSdkIf

Framework SDK FWSdk - PHSdk GRSdk FISdk HISdk FWScene[] GRRender[].

#include <SprFWSdk.h>

FWSdkIfに対する継承グラフ

Public メソッド

 SPR_IFDEF (FWSdk)
 
FWSceneIfCreateScene (const PHSceneDesc &phdesc=PHSceneDesc(), const GRSceneDesc &grdesc=GRSceneDesc())
 空のシーンを作成する 空のシーンを作成し、シーンリストに追加する. 作成されたシーンはアクティブとなる.
 
bool LoadScene (UTString filename, ImportIf *ex=NULL, const IfInfo *ii=NULL, ObjectIfs *objs=NULL)
 シーンをファイルからロードする [詳細]
 
bool SaveScene (UTString filename, ImportIf *ex=NULL, const IfInfo *ii=NULL, ObjectIfs *objs=NULL)
 シーンをファイルへセーブする [詳細]
 
int NScene () const
 シーンの個数を取得する
 
FWSceneIfGetScene (int index=-1)
 シーンを切り替える [詳細]
 
void MergeScene (FWSceneIf *scene0, FWSceneIf *scene1)
 シーンを混ぜる scene1に含まれる全ての要素をscene0に移動し,scene1を削除する.
 
PHSdkIfGetPHSdk ()
 レンダラを作成する レンダラを作成し,レンダラリストに追加する. [詳細]
 
GRSdkIfGetGRSdk ()
 Graphics SDK(GRSdk)オブジェクトを取得する
 
FISdkIfGetFISdk ()
 FileIO SDK(FISdk)オブジェクトを取得する
 
HISdkIfGetHISdk ()
 HumanInterface SDK(HISdk)オブジェクトを取得する
 
bool GetDebugMode ()
 以下は互換性維持のために残してあるが,カレントウィンドウへリダイレクトするのみ [詳細]
 
void SetDebugMode (bool debug=true)
 デバッグ描画モードの設定
 
void Step ()
 シミュレーションの実行
 
void Draw ()
 描画を実行
 
GRRenderIfGetRender ()
 レンダラを取得する
 
- Public メソッド inherited from SdkIf
 SPR_IFDEF (Sdk)
 
- Public メソッド inherited from NameManagerIf
 SPR_IFDEF (NameManager)
 
template<class T >
void FindObject (UTRef< T > &t, UTString name)
 
template<class T >
void FindObject (T *&t, UTString name)
 
NamedObjectIfFindObject (UTString name, UTString cls="")
 
- Public メソッド inherited from NamedObjectIf
 SPR_IFDEF (NamedObject)
 
const char * GetName () const
 名前の取得
 
void SetName (const char *n)
 名前の設定
 
NameManagerIfGetNameManager ()
 名前管理オブジェクトの取得
 
- Public メソッド inherited from ObjectIf
 SPR_IFDEF (Object)
 
ObjectIfGetObjectIf ()
 
const ObjectIfGetObjectIf () const
 
int DelRef () const
 
void Print (std::ostream &os) const
 デバッグ用の表示。子オブジェクトを含む。
 
void PrintShort (std::ostream &os) const
 デバッグ用の表示。子オブジェクトを含まない。
 
void DumpObjectR (std::ostream &os, int level=0) const
 オブジェクトツリーのメモリイメージをダンプ
 
int AddRef ()
 
int RefCount ()
 
size_t NChildObject () const
 子オブジェクトの数
 
ObjectIfGetChildObject (size_t pos)
 子オブジェクトの取得
 
const ObjectIfGetChildObject (size_t pos) const
 
bool AddChildObject (ObjectIf *o)
 子オブジェクトの追加.複数のオブジェクトの子オブジェクトとして追加してよい. 例えば,GRFrameはツリーを作るが,全ノードがGRSceneの子でもある.
 
bool DelChildObject (ObjectIf *o)
 子オブジェクトの削除
 
void Clear ()
 すべての子オブジェクトの削除と、プロパティのクリア
 
ObjectIfCreateObject (const IfInfo *info, const void *desc)
 オブジェクトを作成し,AddChildObject()を呼ぶ.
 
template<class T >
ObjectIfCreateObject (const T &desc)
 CreateObjectを呼び出すユーティリティ関数
 
const void * GetDescAddress () const
 デスクリプタの読み出し(参照版 NULLを返すこともある). これが実装されていなくても,ObjectIf::GetDesc()は実装されていることが多い.
 
bool GetDesc (void *desc) const
 デスクリプタの読み出し(コピー版 失敗する(falseを返す)こともある). ObjectIf::GetDescAddress() が実装されていなくても,こちらは実装されていることがある.
 
void SetDesc (const void *desc)
 デスクリプタの設定
 
size_t GetDescSize () const
 デスクリプタのサイズ
 
const void * GetStateAddress () const
 状態の読み出し(参照版 NULLを返すこともある). これが実装されていなくても,ObjectIf::GetState()は実装されていることがある.
 
bool GetState (void *state) const
 状態の読み出し(コピー版 失敗する(falseを返す)こともある). ObjectIf::GetStateAddress() が実装されていなくても,こちらは実装されていることがある.
 
void SetState (const void *state)
 状態の設定
 
bool WriteStateR (std::ostream &fout)
 状態の書き出し
 
bool WriteState (std::string fileName)
 
bool ReadStateR (std::istream &fin)
 状態の読み込み
 
bool ReadState (std::string fileName)
 
size_t GetStateSize () const
 状態のサイズ
 
void ConstructState (void *m) const
 メモリブロックを状態型に初期化
 
void DestructState (void *m) const
 状態型をメモリブロックに戻す
 

Static Public メソッド

static FWSdkIf *SPR_CDECL CreateSdk ()
 SDKオブジェクトを作成する
 
static void SPR_CDECL RegisterSdk ()
 DSTR出力のデバッグ情報の表示の可否を設定
 
- Static Public メソッド inherited from SdkIf
static SdkIf *SPR_CDECL CreateSdk (const IfInfo *info, const void *desc)
 

関数

bool GetDebugMode ( )

デバッグ描画モードの取得

PHSdkIf* GetPHSdk ( )

*引数でDeviceをGLかD3Dかを指定できるようにするべきレンダラの個数を取得する レンダラをアクティブにする Physics SDK(PHSdk)オブジェクトを取得する

参照元 MyApp::BuildScene().

FWSceneIf* GetScene ( int  index = -1)
引数
sceneシーンsceneをアクティブにするシーンを取得する
index取得するシーンのインデックス
bool LoadScene ( UTString  filename,
ImportIf ex = NULL,
const IfInfo ii = NULL,
ObjectIfs objs = NULL 
)
引数
filenameファイル名
iiファイルの種類を示すIfInfo
objs親オブジェクトの配列 指定されたファイルからシーンをロードし、シーンリストに追加する. ロード後は,ロードされたシーンがアクティブとなる. ファイル中に複数のシーンが含まれていた場合は,最後にロードされたシーンがアクティブとなる.

iiがNULLの場合は拡張子からファイルタイプが判定される. ファイルタイプを明示したい場合はiiに対応するIfInfoを指定する(FIFileXIf::GetIfInfoStatic()など)

親オブジェクトを指定したい場合は,objsに設定する. objsがNULLの場合,シーンはFWSdkの子オブジェクトとしてロードされる.

内部でインポートされるファイルのタイプは必ず拡張子より判定される.

参照元 FWMyApptest::BuildScene().

bool SaveScene ( UTString  filename,
ImportIf ex = NULL,
const IfInfo ii = NULL,
ObjectIfs objs = NULL 
)
引数
filenameファイル名
exエクスポート情報
iiファイルの種類を示すIfInfo
objs保存するオブジェクトの配列 ファイルの種類の指定についてはLoadSceneを参照.

保存するオブジェクトを指定したい場合は,それらをobjsに設定する. objsがNULLの場合は全てのFWSceneが保存される.

部分的に別ファイルに保存したい場合はエクスポート情報をexに指定する. exがNULLの場合は全てが1つのファイルに保存される.


この構造体の説明は次のファイルから生成されました: