eSEAT/SeatParser.py
SEATMLファイルのパーザーのクラスと関連関数を定義したファイルです。
SEATML_Parserクラス
このクラスは、SEATMLのファイルを読込、解釈しRTCのデータポートの作成、コマンドテーブルの作成等を行います。
- class ''SEATML_Parser''()
-
__init__(parent, xsd='seatml.xsd', logger=None)
コンストラクタ
- setXsd(xsd_filename, _dir=None)XDSファイルの設定。SEATROOT環境変数が定義してあればそのディレクトリを検索する
- setParentLogger()親クラスのロガーを設定する
- logInfo(message)RTC_INFOレベルでmessageを表示
- logError(message)RTC_ERRORレベルでmessageを表示
- createAdaptor(tag)送受信アダプタ(データポート、Socketポート、WebAdaptor)を生成する
- parseCommands(element)コマンド(message, script, shell,statetransitionタグ)のパージング
- getScripts(element)elementタグのTEXT要素をpythonスクリプトとして取得する
- procScript(element, fname)elementタグのTEXT要素をpythonスクリプトとして実行する
- getAttribute(element, name, def_val=None)elementタグのnameという属性を取得する。もし、その属性がなかった場合には、def_valを初期値として返す
- getText(element)elementタグのTEXT要素を取得する
- parseGui(name,element)GUI関連タグのパージングを行う
- loadRuleFile(name, fname, state_name)fnameで指定されたseatmlファイルを読込、state_nameで指定された<state>タグ内の<rule>を読込、nameという内部状態のruleとする。state_nameが指定されない場合には、読み込んだseatmlの最初に定義された<state>タグの要素を対象とする。
- parseRule(element)<rule>タグのパージング
- parseExec(element)<onexec>タグのパージング
- parseActivated(element)<onactivated>タグのパージング
- parseDeactivated(element)<ondeactivated>タグのパージング
- parseTimeout(element)<ontimeout>タグのパージング
- load(file_name)file_nameで指定されたSEATMLファイルを読込パージングを行う
-
__init__(parent, xsd='seatml.xsd', logger=None)
その他の関数
- decompString(strs)
- <key>タグで指定された条件となる文字列の分解
- decompStringSub(str)
- decompStringから呼ばれる補助関数
- convertDataType(dtype, data, code='utf-8')
- 文字列のコード変換、整数化、浮動小数点化など
- formantInstanceName(name)
- 'aa/bb/cc.xx' のような文字列から 'cc'を抽出する
- countSp(str)
- 行頭の空白文字をカウント
- skipSps(txt)
- 最初の行の行頭の空白文字をカウントし、その数だけ各行の行頭から文字を削除したテキストを生成する