OpenRTM-aist (C++): チケット
https://www.openrtm.org/redmine/
https://www.openrtm.org/redmine/redmine/favicon.ico
2017-01-22T23:44:11Z
Redmine for OpenRTM-aist
Redmine
機能 #3881 (終了): Manager::create_component()でdllを検索する機能をOFFにする機能
https://www.openrtm.org/redmine/issues/3881
2017-01-22T23:44:11Z
kanehiro
f-kanehiro@aist.go.jp
<p>Manager::create_component()でコンポーネントを定義したdllがロードされていないと考えられる場合、dll(so)をしらみつぶしにロードしてみる機能があるかと思うのですが、これが大量のエラーメッセージをはいたり、途中で止まったりするので、これをOFFにしたいと思います。<br />この機能は既にあるでしょうか。なければ追加できるでしょうか。</p>
機能 #3223 (終了): 初期化時にポートの接続やアクティベーションをrtc.confで指定し実行できるようにする
https://www.openrtm.org/redmine/issues/3223
2015-06-14T18:00:51Z
n-ando
Noriaki.Ando@gmail.com
<a name="ポートの接続"></a>
<h1 >ポートの接続<a href="#ポートの接続" class="wiki-anchor">¶</a></h1>
以下のような指定でポートの事前接続を実行するようにする
<ul>
<li>manager.components.preconnect: ConsoleIn.out:ConsoleOut.in(dataflow_type=push,interface_type=corba_cdr)</li>
</ul>
<a name="コンポーネントのアクティベーション"></a>
<h1 >コンポーネントのアクティベーション<a href="#コンポーネントのアクティベーション" class="wiki-anchor">¶</a></h1>
<p>以下のような指定でコンポーネントの事前アクティベーションを実行できるようにする<br />*manager.components.preactivate: ConsoleIn0, ConsoleOut0</p>
機能 #2166 (終了): InPortの構造を再検討する
https://www.openrtm.org/redmine/issues/2166
2011-06-15T08:24:23Z
kurihara
shinji0608@gmail.com
<p>InPortの構造を再検討する。</p>
<ul>
<li>isNew()とread()でロック機構がない。</li>
</ul>
機能 #2064 (終了): 新しいOpenCV-RTC群をmsiに含める
https://www.openrtm.org/redmine/issues/2064
2011-04-12T06:14:06Z
kurihara
shinji0608@gmail.com
<p>新しいOpenCV-RTC群をmsiに含める。</p>
機能 #759 (終了): OpenRTM-aist(C++)-ポート接続時の"dataport.publisher"階層の導入
https://www.openrtm.org/redmine/issues/759
2009-07-02T07:05:52Z
匿名ユーザー
<p>ポート接続時の設定情報で、<br />publisher関係のプロパティを"dataport.publisher"階層に設定して動作するよう修正する。</p>
<p>1. rtc.conf(component.conf)で指定する方法</p>
<p> #============================================================<br /> # data port configurations<br /> #<br /> # conf ファイルで与えることができるプロパティ<br /> #<br /> # port.[port_name].dataport.interface_type: [corba_cdr, raw_tcp, etc..]<br /> # port.[port_name].dataport.dataflow_type: [push, pull]<br /> # port.[port_name].dataport.subscription_type: [flash, new, periodic]<br /> # port.[port_name].dataport.constraint: [constraint_specifier]<br /> # port.[port_name].dataport.fan_out: [number of connection, InPort only]<br /> # port.[port_name].dataport.fan_in: [number of connection, InPort only]<br /> #<br /> # publisher 関係のプロパティ ★<br /> # port.[port_name].dataport.publisher.push_rate: freq.<br /> # port.[port_name].dataport.publisher.push_policy: [all, new, skip, fifo]<br /> # port.[port_name].dataport.publisher.skip_count: [skip count]<br /> #<br /> # インターフェース依存のプロパティ指定方法<br /> # port.[port_name].dataport.[interface_type].[iface_dependent_options]:<br /> #<br /> # CORBA Any type dependent options<br /> # port.[port_name].dataport.corba_any.inport_ref: read only<br /> # port.[port_name].dataport.corba_any.outport_ref: read only<br /> #<br /> # Raw TCP type dependent options<br /> # port.[port_name].dataport.raw_tcp.server_addr:</p>
<p>2. ConnectorProfile::propertiesで指定する方法</p>
<p> #<br /> # 接続時に ConnectorProfile::properties で与えられるプロパティ<br /> # 上記のプロパティから port.[port_name] を削除したプロパティ<br /> #<br /> # dataport.interface_type: [corba_cdr, raw_tcp, etc..]<br /> # dataport.dataflow_type: [push, pull]<br /> # dataport.subscription_type: [flash, new, periodic]<br /> # dataport.constraint: [constraint_specifier]<br /> # dataport.fan_out: [number of connection, InPort only]<br /> # dataport.fan_in: [number of connection, InPort only]<br /> #<br /> # publisher 関係のプロパティ ★<br /> # dataport.publisher.push_policy: [all, new, skip, fifo]<br /> # dataport.publisher.push_rate: freq (subscription_type が periodic のときのみ)<br /> # dataport.publisher.skip_count: [skip count] (push_policy が skip のときのみ)<br /> #<br /> # dataport.[interface_type].[iface_dependent_options]:<br /> #</p>
機能 #372 (終了): ログ出力機能の見直し
https://www.openrtm.org/redmine/issues/372
2009-02-05T08:12:42Z
n-ando
Noriaki.Ando@gmail.com
<p>現在SystemLoggger.h内で定義されているログ出力機能のデザインが冗長なので見直すと共に、あらゆるクラスから簡単にログ出力できるよう改良する。<br />具体的には、クラスのメンバ変数としてrtcoutを宣言するだけでManagerかlog出力用のストリームを取得し設定して利用可能にする。</p>
機能 #367 (終了): coilに時間計測のためのクラスを導入
https://www.openrtm.org/redmine/issues/367
2009-02-02T23:45:16Z
n-ando
Noriaki.Ando@gmail.com
<p>RTCやRTM内で種々の実行時間などを計測するためのクラスTimeMeasureをcoilに導入する。<br />また、そのテストを作成する。</p>
機能 #342 (終了): モジュールのpreload処理をactivateManagerの前に持ってくる
https://www.openrtm.org/redmine/issues/342
2009-01-19T09:45:03Z
n-ando
Noriaki.Ando@gmail.com
<p>モジュールのpreload処理が現在activateManagerの後に呼ばれている可能性がある(もしかすると修正済みかもしれない。)<br />そうすると、activateManagerを行う際に必要なモジュールがロードされていないかのうせいがあるので、モジュールのロードはできるだけManagerの初期化の早い段階で行うように変更する。</p>
機能 #337 (終了): 非同期関数呼び出しフレームワークを実装する
https://www.openrtm.org/redmine/issues/337
2009-01-19T09:32:12Z
n-ando
Noriaki.Ando@gmail.com
<p>様々な場面で非同期に関数呼び出しを行うための枠組みを提供する。<br />たとえば、他のRTCのサービスポート上のサービス関数を呼ぶ際、非同期に呼び出しを行いたい場合がある。<br />これに対して、ある種のスレッドオブジェクトを生成して、関数の実行を別スレッドで行えるようなクラスを実装する。<br />呼び出しに対する戻り値は戻り値オブジェクトを与えて、あとで適切な時に結果を読むか、コールバックオブジェクトを呼ぶなどして結果および呼び出しが終了したことを通知する。<br />上記の機能をもったクラスをcoilのTaskクラスを利用して実装する。</p>
機能 #323 (終了): PortのユーザAPIの軽微な改良
https://www.openrtm.org/redmine/issues/323
2009-01-10T10:32:03Z
n-ando
Noriaki.Ando@gmail.com
<p>Port関連のユーザに公開するAPIに関して以下の改良を行うこと。</p>
<ul>
<li>RTObject
<ul>
<li>ポートのインスタンスで削除する関数の追加</li>
<li>データポートを一気にread/writeする関数</li>
<li>上記の関数をデフォルトで呼ぶように設定する関数</li>
</ul></li>
</ul>
<ul>
<li>Port
<ul>
<li>Connectionをより容易に取得する関数</li>
<li>connect/disconnect 時のコールバック</li>
</ul></li>
</ul>
機能 #322 (終了): ManagerのCORBA化
https://www.openrtm.org/redmine/issues/322
2009-01-10T10:27:11Z
n-ando
Noriaki.Ando@gmail.com
<p>ManagerをCORBAサーバント化し、外部からコンポーネントの生成・削除、システム状態の取得などが行えるようにすること。<br />主な機能としては、以下の機能を実装すること。</p>
<ul>
<li>モジュール関連機能
<ul>
<li>load_module(in string pathname, in string initfunc)</li>
<li>unload_module(in string pathname)</li>
<li>get_loadable_modules()</li>
<li>get_loaded_modules()</li>
</ul>
</li>
<li>RTCライフサイクル関連機能
<ul>
<li>get_factory_profiles()</li>
<li>create_component(in string module_name)</li>
<li>delete_component(in string instance_name)</li>
<li>get_components()</li>
<li>get_component_profiles()</li>
</ul>
</li>
<li>システム関連機能
<ul>
<li>get_profile()</li>
<li>get_configuration()</li>
<li>set_configuration(in string name, in string value)</li>
</ul>
</li>
<li>Manager関連機能
<ul>
<li>get_owner()</li>
<li>set_owner(in Manager mgr)</li>
<li>get_child()</li>
<li>set_child(in Manager mgr)</li>
</ul>
</li>
<li>プロセス管理機能
<ul>
<li>fork()</li>
<li>shutdown()</li>
<li>restart()</li>
</ul>
</li>
<li>その他
<ul>
<li>get_service(in string name)</li>
</ul></li>
</ul>
<p>また、Managerはネームサーバ上に特定の名前・Kindで登録可能にすること。</p>
機能 #234 (却下): RTCのdoil::corba対応のためのサーバントクラスの実装
https://www.openrtm.org/redmine/issues/234
2008-10-29T05:39:27Z
n-ando
Noriaki.Ando@gmail.com
<p>RTCの各オブジェクトをdoilのフレームワークに適用するために、ローカルインターフェースのRTC関連オブジェクトをCORBAのサーバントに適合させるためのサーバントクラスを実装する。</p>
<p>具体的には、RTC.idlに基づき生成されたスケルトンを継承したサーバントクラスを、RTCのローカルオブジェクトに処理を移譲する形で実装する。<br />単純な変数型は、何らかの変換関数または変換クラスを定義することで変換すること。また、オブジェクト型の変換はdoil::corbaを利用して行う。</p>
以下のサーバントクラスを実装すること
<ul>
<li>ComponentAction</li>
<li>DataFlowComponent</li>
<li>DataFlowComponentAction</li>
<li>ExecutionContext</li>
<li>ExecutionContextService</li>
<li>Fsm</li>
<li>FsmObject</li>
<li>FsmParticipant</li>
<li>FsmParticipantAction</li>
<li>FsmService</li>
<li>LightweightRTObject</li>
<li>Mode</li>
<li>ModeCapable</li>
<li>MultiModeComponentAction</li>
<li>MultiModeObject</li>
<li>PortService</li>
<li>RTObject</li>
</ul>
<p>サーバントを含む共有オブジェクトは、ロード時にdoil::ORBManagerにファクトリを登録するように実装すること。</p>
機能 #233 (却下): RTC関連オブジェクトのCORBAからの分離
https://www.openrtm.org/redmine/issues/233
2008-10-29T05:30:57Z
n-ando
Noriaki.Ando@gmail.com
<p>doilの導入に伴い、RTC関連オブジェクトをCORBAから分離する。<br />分離するにあたり、idl->C++マッピングは、Iceに似たできるだけ自然な形のマッピングとする。<br />IDLのインターフェース型は、単純にインターフェースのポインタ型とする。<br />また、導出されたマッピングをいったんインターフェースとして定義し、実装クラスとは分離する。</p>
<p>実装しなおすオブジェクトは以下の通り、</p>
<ul>
<li>ComponentAction</li>
<li>DataFlowComponent</li>
<li>DataFlowComponentAction</li>
<li>ExecutionContext</li>
<li>ExecutionContextService</li>
<li>Fsm</li>
<li>FsmObject</li>
<li>FsmParticipant</li>
<li>FsmParticipantAction</li>
<li>FsmService</li>
<li>LightweightRTObject</li>
<li>Mode</li>
<li>ModeCapable</li>
<li>MultiModeComponentAction</li>
<li>MultiModeObject</li>
<li>PortService</li>
<li>RTObject</li>
</ul>
<p>インターフェースはこれらのクラス名に接頭辞'I'をつけた名称とする。<br />実装クラスは、これらの名称に接尾辞'Impl'をつけた名称とする。<br />これらの実装にはCORBAもしくはそれに類する機能を一切使わないこと。</p>
機能 #208 (終了): ネームサービスに登録する名前のフォーマットに関する改良
https://www.openrtm.org/redmine/issues/208
2008-10-16T09:40:34Z
n-ando
Noriaki.Ando@gmail.com
<p>ネームサービスに登録する際の名前の指定子に、ベース名(implementaion_id)と番号も個別に指定できるようにする。<br />Manager::formatString 関数に以下の5行を追加。</p>
<pre><code>else if (c == 'c') str <ins>= prop["category"];<br /></ins> else if (c == 'i') str <ins>= prop["implementation_id"];<br /></ins> else if (c == 'N') {<br />+ size_t n =<br />prop["implementation_id"].size();<br />+ str <ins>= prop["instance_name"].substr(n);<br /></ins> }<br /> else if (c == 'h') str += m_config["manager.os.hostname"];</code></pre>
<p>rtc.conf内で<br />naming.formats: %h.host_cxt/%i-%N.rtc<br />とすると、<br />ManipulatorPA10-0<br />のような名前でネームサーバに登録される。</p>
機能 #207 (終了): データポートのデータに対するタイムスタンプ付与APIの追加
https://www.openrtm.org/redmine/issues/207
2008-10-16T09:30:11Z
n-ando
Noriaki.Ando@gmail.com
<p>現在、データポートのデータにはタイムスタンプのためのメンバがあるが、時刻データをを代入する標準的な方法がない。<br />コンポーネントの時刻は実行コンテキストにより進められるため、タイムスタンプを付与する際には実行コンテキストから時刻を取得<br />する方法があればOpenHRP3などでもRTC側の変更なしに正しい時刻が得られる。<br />これを実現するために、ECから時刻を取得しタイムスタンプを与えるAPIを追加する。</p>