Wide Studio Object Reference

| 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)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)
  機能
    指定された名称のシリアライズ元からしていされた名称のデータを 読み込みます。
  処理
  引数

    (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.20
  For Use with Wide Studio Release 3.20, Winter 2002

  WideStudio Home | Up to

  Copyright(C) T. Hirabayashi, 1999-2002 |  | Last modified: Nov. 28, 2002