Wide Studio Object Reference

Wide Studio Home
Up to

## クラスの型

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)WSCbase* 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= 正常、それ以外はエラー。
  注意
  サンプル
    WSGIconductor() を参照してください。

  ### save 関数の説明

  書式
    long save(WSDserialize* dest, char* type, char* name, void* ptr)
  機能
    指定されたデータを指定された名称のシリアライズ先に 出力する関数です。 GUIインスタンスだけでなく通常のデータ型のシリアライズできます。
  処理
  引数

    (in)WSDserialize* dest | シリアライズ先インスタンス
    (in)char* type | データのクラス名
    (in)char* name | シリアライズ名
    (in)void* ptr | 出力データ

  返値
    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* ptr | 読み込んだデータを格納するポインタ

  返値
    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 | シリアライズ出力名

  返値
    シリアライズインスタンス
  注意
  サンプル
    WSGIconductor() を参照してください。

  ### endTransaction 関数の説明

  書式
    WSDserialize* endTransaction(WSDserialize* sr)
  機能
    シリアライズインスタンスを指定して、一連のストア出力を 終了させるための関数です。
  処理
  引数

    (in)WSDserialize* sr | シリアライズインスタンス

  返値
    WS_NO_ERR= 正常、それ以外はエラー。
  注意
  サンプル
    WSGIconductor() を参照してください。

  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