|  | Springhead
    An open source physics engine for virtual reality, haptics and motion generation. | 
Framework SDK FWSdk - PHSdk GRSdk FISdk HISdk FWScene[] GRRender[].
#include <SprFWSdk.h>

| Public メソッド | |
| SPR_IFDEF (FWSdk) | |
| FWSceneIf * | CreateScene (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 | 
| シーンの個数を取得する | |
| FWSceneIf * | GetScene (int index=-1) | 
| シーンを切り替える  [詳細] | |
| void | MergeScene (FWSceneIf *scene0, FWSceneIf *scene1) | 
| シーンを混ぜる scene1に含まれる全ての要素をscene0に移動し,scene1を削除する. | |
| PHSdkIf * | GetPHSdk () | 
| レンダラを作成する レンダラを作成し,レンダラリストに追加する.  [詳細] | |
| GRSdkIf * | GetGRSdk () | 
| Graphics SDK(GRSdk)オブジェクトを取得する | |
| FISdkIf * | GetFISdk () | 
| FileIO SDK(FISdk)オブジェクトを取得する | |
| HISdkIf * | GetHISdk () | 
| HumanInterface SDK(HISdk)オブジェクトを取得する | |
| bool | GetDebugMode () | 
| 以下は互換性維持のために残してあるが,カレントウィンドウへリダイレクトするのみ  [詳細] | |
| void | SetDebugMode (bool debug=true) | 
| デバッグ描画モードの設定 | |
| void | Step () | 
| シミュレーションの実行 | |
| void | Draw () | 
| 描画を実行 | |
| GRRenderIf * | GetRender () | 
| レンダラを取得する | |
|  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) | 
| NamedObjectIf * | FindObject (UTString name, UTString cls="") | 
|  Public メソッド inherited from NamedObjectIf | |
| SPR_IFDEF (NamedObject) | |
| const char * | GetName () const | 
| 名前の取得 | |
| void | SetName (const char *n) | 
| 名前の設定 | |
| NameManagerIf * | GetNameManager () | 
| 名前管理オブジェクトの取得 | |
|  Public メソッド inherited from ObjectIf | |
| SPR_IFDEF (Object) | |
| ObjectIf * | GetObjectIf () | 
| const ObjectIf * | GetObjectIf () 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 | 
| 子オブジェクトの数 | |
| ObjectIf * | GetChildObject (size_t pos) | 
| 子オブジェクトの取得 | |
| const ObjectIf * | GetChildObject (size_t pos) const | 
| bool | AddChildObject (ObjectIf *o) | 
| 子オブジェクトの追加.複数のオブジェクトの子オブジェクトとして追加してよい. 例えば,GRFrameはツリーを作るが,全ノードがGRSceneの子でもある. | |
| bool | DelChildObject (ObjectIf *o) | 
| 子オブジェクトの削除 | |
| void | Clear () | 
| すべての子オブジェクトの削除と、プロパティのクリア | |
| ObjectIf * | CreateObject (const IfInfo *info, const void *desc) | 
| オブジェクトを作成し,AddChildObject()を呼ぶ. | |
| template<class T > | |
| ObjectIf * | CreateObject (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の子オブジェクトとしてロードされる.
内部でインポートされるファイルのタイプは必ず拡張子より判定される.
| 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つのファイルに保存される.