 | | Wide Studio Object Reference
| |
クラスの型
WSCconductor
メソッド関数仕様
WSGIconductor 関数の説明
- 書式
- WSCconductor* WSGIconductor()
- 機能
- アプリケーションにひとつ存在するストア管理クラスの
グローバルインスタンスを取得する関数です。
- 処理
-
- 引数
- なし。
- 返値
- ストア管理クラスインスタンスへのポインタ
- 注意
- この関数はグローバル関数です。
返されたポインタを解放してはいけません。
- サンプル
-
#include <WSCconductor.h>
void sample_proc(){
WSCbase* window = NULL; //返り値(ロードしたアプリケーションウィンドウ)を格納
char* stype = "FILE"; //FILE 指定
char* fname = "newpic001.oof"; //FILE 名称
char* path = "/usr1/win/data"; //DIR 指定
char* parent = NULL; //ウィンドウをロードするので親インスタンスは指定しない。
//読み先ディレクトリを指定。
WSGIconductor()->setSerializePath(path);
WSDserialize* db = WSGIconductor()->beginTransaction(stype,fname);
if (db == NULL){
return WS_ERR;
}
long ret = WSGIconductor()->loadGUI(db,&window,parent);
long ret2 = WSGIconductor()->endTransaction(db);
}
saveGUI 関数の説明
- 書式
- long saveGUI(WSDserialize* dest,char* name,WSCbase* inst)
- 機能
- 指定されたインスタンスを、指定された名称のシリアライズ先に
出力する関数です。
- 処理
-
- 引数
-
(in)WSDserialize* dest | シリアライズ先インスタンス |
(in)char* name | シリアライズ名 |
(in)inst | ストアしたいインスタンス名 |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
-
#include <WSCconductor.h>
void sample_proc(WSCbase* object){
char* stype = "FILE"; //FILE 指定
char* fname = "newpic001.oof"; //FILE 名称
char* path = "/usr1/win/data"; //DIR 指定
//読み先ディレクトリを指定。
WSGIconductor()->setSerializePath(path);
WSDserialize* db = WSGIconductor()->beginTransaction(stype,fname);
if (db == NULL){
return WS_ERR;
}
WSGIconductor()->saveGUI(db,object->getInstanceName(),object);
return WSGIconductor()->endTransaction(db);
}
loadGUI 関数の説明
- 書式
- long loadGUI(WSDserialize* src,WSCbase** inst,WSCbase* parent)
- 機能
- 指定されたシリアライズ元からインスタンスを読み込む関数です。
読み込まれたインスタンスは、第三引数で指定する
親インスタンスが管理するインスタンスになります。
- 処理
-
- 引数
-
(in)WSDserialize* src | シリアライズ元インスタンス |
(out)WSCbase** inst | 読み込んだインスタンスを格納するポインタ |
(in)WSCbase* parent | 読み込むインスタンスの親インスタンス |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
- WSGIappConductor() を参照してください。
save 関数の説明
- 書式
- long save(WSDserialize* dest, char* type, char* name, void* ptr)
- 機能
- 指定されたデータを指定された名称のシリアライズ先に
出力する関数です。
GUIインスタンスだけでなく通常のデータ型のシリアライズできます。
- 処理
-
- 引数
-
(in)WSDserialize* dest | シリアライズ先インスタンス |
(in)char* type | データのクラス名 |
(in)char* name | シリアライズ名 |
(in)void* data | 出力データ |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
-
#include <WSCconductor.h>
void sample_proc(WSCbase* object){
char* stype = "FILE"; //FILE 指定
char* fname = "newpic001.oof"; //FILE 名称
char* path = "/usr1/win/data"; //DIR 指定
//読み先ディレクトリを指定。
WSGIconductor()->setSerializePath(path);
WSDserialize* db = WSGIconductor()->beginTransaction(stype,fname);
if (db == NULL){
return WS_ERR;
}
WSGIconductor()->save(db,object->getClassName(),object->getInstanceName(),object);
return WSGIconductor()->endTransaction(db);
}
load 関数の説明
- 書式
- long load(WSDserialize* dest, char* type, char* name, void* ptr)
- 機能
- 指定された名称のシリアライズ元から指定された名称のデータを
読み込む関数です。GUI インスタンスだけでなく、
通常のデータ型のシリアライズ化されたデータも
読み込むことができます。
- 処理
-
- 引数
-
(in)WSDserialize* dest | シリアライズ元インスタンス |
(in)char* type | データのクラス名 |
(in)char* name | シリアライズ名 |
(in)void* data | 読み込んだデータを格納するポインタ |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
-
#include <WSCconductor.h>
void sample_proc(WSCbase* object){
WSCbase* window = NULL; //返り値(ロードしたアプリケーションウィンドウ)を格納
char* stype = "FILE"; //FILE 指定
char* fname = "newpic001.oof"; //FILE 名称
char* path = "/usr1/win/data"; //DIR 指定
char* parent = NULL; //ウィンドウをロードするので親インスタンスは指定しない。
//読み先ディレクトリを指定。
WSGIconductor()->setSerializePath(path);
WSDserialize* db = WSGIconductor()->beginTransaction(stype,fname);
if (db == NULL){
return WS_ERR;
}
WSGIconductor()->save(db,"WSCbase","*",&window,parent);
return WSGIconductor()->endTransaction(db);
}
beginTransaction 関数の説明
- 書式
- WSDserialize* beginTransaction(char* stype,char* sname)
- 機能
- シリアライズ名を指定して、ストア出力用
シリアライズインスタンスを取得する関数です。
- 処理
-
- 引数
-
(in)char* stype | 出力タイプ名 |
(in)char* sname | シリアライズ出力名 |
- 返値
- シリアライズインスタンス
- 注意
-
- サンプル
- WSGIappConductor() を参照してください。
endTransaction 関数の説明
- 書式
- WSDserialize* endTransaction(WSDserialize* sr)
- 機能
- シリアライズインスタンスを指定して、一連のストア出力を
終了させるための関数です。
- 処理
-
- 引数
-
(in)WSDserialize* sr | シリアライズインスタンス |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
- WSGIappConductor() を参照してください。
Document Release 3.70 For Use with Wide Studio Release 3.70, Spring 2004 WideStudio Home | Up to Copyright(C) WideStudio Development Team, 1999-2004 | | Last modified: May. 25, 2004 | |