eSEAT_SeatParser.py
Simple Wiki Based Contents Management System
ソフトウェア関連 >> RTコンポーネント関連 >> eSEAT_v2.5 >> eSEATのファイル構成クラスについて >> eSEAT_SeatParser.py

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ファイルを読込パージングを行う

その他の関数

decompString(strs)
<key>タグで指定された条件となる文字列の分解
decompStringSub(str)
decompStringから呼ばれる補助関数
convertDataType(dtype, data, code='utf-8')
文字列のコード変換、整数化、浮動小数点化など
formantInstanceName(name)
'aa/bb/cc.xx' のような文字列から 'cc'を抽出する
countSp(str)
行頭の空白文字をカウント
skipSps(txt)
最初の行の行頭の空白文字をカウントし、その数だけ各行の行頭から文字を削除したテキストを生成する