>>[[データ取得による処理連動(バージョン0.42まで)]] *概要 [#tcb2f4c0] -処理モジュールの処理を,他の処理モジュールの処理結果を利用して行います -連動要請と連動実行は,それぞれ別の処理モジュールで行います *実装方法 [#yddab60f] &ref(datalinknew.png,,45%,); &ref(datalinknew.png,,40%,); **連動要請(処理モジュール) [#y7d78e05] +処理結果を取得したい処理モジュールの moduleID 並びに,取得したいデータの dataID を調べます +処理モジュール内で,スーパークラスで用意されている,取得したいデータの型に応じたメソッドを呼び出します boolean getDataBoolean(int getModuleID, int dataID); int getDataInteger( int getModuleID, int dataID ); double getDataDouble( int getModuleID, int dataID ); String getDataString( int getModuleID, int dataID ); boolean[] getDataBooleanArray(int getModuleID, int dataID); int[] getDataIntegerArray( int getModuleID, int dataID ); double[] getDataDoubleArray( int getModuleID, int dataID ); String[] getDataStringArray( int getModuleID, int dataID ); boolean[][] getDataBooleanArray2(int getModuleID, int dataID); int[][] getDataIntegerArray2(int getModuleID, int dataID); double[][] getDataDoubleArray2(int getModuleID, int dataID); -オプションやフォーカス情報による連動実行の際に,過去の実行結果ではなく,最新のデータを生成して利用する場合,以下のメソッドを呼び出します --&color(red){他のモジュールからの連動対象(フォーカス連動やオプションによる連動)となる可能性があり,連動対象となったときに getData** で呼び出しているモジュールが先に実行されず,データが更新されない場合,以下のメソッドを利用して下さい.}; boolean getNewDataBoolean(int getModuleID, int dataID); int getNewDataInteger( int getModuleID, int dataID ); double getNewDataDouble( int getModuleID, int dataID ); String getNewDataString( int getModuleID, int dataID ); boolean[] getNewDataBooleanArray(int getModuleID, int dataID); int[] getNewDataIntegerArray( int getModuleID, int dataID ); double[] getNewDataDoubleArray( int getModuleID, int dataID ); String[] getNewDataStringArray( int getModuleID, int dataID ); boolean[][] getNewDataBooleanArray2(int getModuleID, int dataID); int[][] getNewDataIntegerArray2(int getModuleID, int dataID) double[][] getNewDataDoubleArray2(int getModuleID, int dataID) **連動実行(処理モジュール) [#f1c6891e] -処理モジュールにおいて,実装必須のメソッド miningOperations( optionNumber ) 内の,既存の case 文の処理によって,取得したいデータ型の dataIDの処理結果が生成される場合,実装の必要はありません -新たな処理を追加してデータを生成する場合は,メソッド miningOperations( optionNumber ) 内において,dataID の処理結果を,setData*** メソッドにより作成してください void setDataBoolean(int dataID, boolean data); void setDataInteger(int dataID, int data); void setDataDouble(int dataID, double data); void setDataString(int dataID, String data); void setDataBooleanArray(int dataID, boolean data[]); void setDataIntegerArray(int dataID, int data[]); void setDataDoubleArray(int dataID, double data[]); void setDataStringArray(int dataID, String data[]); void setDataBooleanArray2(int dataID, boolean data[][]); void setDataIntegerArray2(int dataID, int data[][]); void setDataDoubleArray2(int dataID, double data[][]); -&color(red){[注意点]}; setData***( dataID, **) は,miningOperations 内で,case 0: または case dataID: 内で実行されるように記述して下さい. -&color(red){[注意点]}; 同じ dataID をもつ,異なるデータ型のデータを生成することも可能です.ただし,同じ dataID をもつデータの生成は,同一の case 文の中に記述して下さい. *データ取得による処理連動の処理フロー [#sef6a8ee] &ref(databasenew.png,,40%,);