ネームスペース CORBA_SeqUtil

CORBA sequence ヘルパーテンプレート関数 [詳細]


関数

template<class CorbaSequence, class Functor>
Functor for_each (CorbaSequence &seq, Functor f)
 CORBA sequence に対して functor を適用する
template<class CorbaSequence, class Functor>
CORBA::Long find (const CorbaSequence &seq, Functor f)
 CORBA sequence の中から functor に適合する要素のインデックスを返す
template<class CorbaSequence, class SequenceElement>
void push_back (CorbaSequence &seq, SequenceElement elem)
 CORBA sequence の最後に要素を追加する
template<class CorbaSequence>
void push_back_list (CorbaSequence &seq1, const CorbaSequence &seq2)
template<class CorbaSequence, class SequenceElement>
void insert (CorbaSequence &seq, SequenceElement &elem, CORBA::ULong index)
 CORBA sequence に要素を挿入する
template<class CorbaSequence, class SequenceElement>
SequenceElement & front (CorbaSequence &seq)
 CORBA sequence の先頭要素を取得する
template<class CorbaSequence, class SequenceElement>
SequenceElement & back (CorbaSequence &seq)
 CORBA sequence の末尾要素を取得する
template<class CorbaSequence>
void erase (CorbaSequence &seq, CORBA::ULong index)
 CORBA sequence の指定された位置の要素を削除する
template<class CorbaSequence, class Functor>
void erase_if (CorbaSequence &seq, Functor f)
template<class CorbaSequence>
void clear (CorbaSequence &seq)
 CORBA sequence の全要素を削除


説明

CORBA sequence ヘルパーテンプレート関数

CORBA sequence に対して以下のユーティリティテンプレート関数を提供する。 操作はスレッドセーフではないので、スレッドセーフに操作したい場合は、 対象となるシーケンス値を適切にmutex等で保護する必要がある。


関数

template<class CorbaSequence, class SequenceElement>
SequenceElement& CORBA_SeqUtil::back CorbaSequence &  seq  ) 
 

CORBA sequence の末尾要素を取得する

seq[seq.length() - 1] と同じ。

引数:
seq 要素を取得する CORBA sequence

template<class CorbaSequence>
void CORBA_SeqUtil::clear CorbaSequence &  seq  ) 
 

CORBA sequence の全要素を削除

seq.length(0) と同じ。

template<class CorbaSequence>
void CORBA_SeqUtil::erase CorbaSequence &  seq,
CORBA::ULong  index
 

CORBA sequence の指定された位置の要素を削除する

指定されたインデックスの要素を削除する。 削除された要素は詰められ、sequence の長さは1減る。

引数:
seq 要素を削除する CORBA sequence
index 削除する要素のインデックス

template<class CorbaSequence, class Functor>
void CORBA_SeqUtil::erase_if CorbaSequence &  seq,
Functor  f
 

template<class CorbaSequence, class Functor>
CORBA::Long CORBA_SeqUtil::find const CorbaSequence &  seq,
Functor  f
 

CORBA sequence の中から functor に適合する要素のインデックスを返す

CORBA sequence 全ての要素に対して、与えられた functor を適用し、 functor が true を返すようそのインデックスを返す。 functor は bool functor(const CORBA sequence の要素) の形式をとり、 適合する要素に対して true を返す必要がある。

戻り値:
Functor に適合する要素のインデックス。 見つからないときは -1 を返す。
引数:
seq Functor を適用する CORBA sequence
functor CORBA sequence から要素を見つける Functor

template<class CorbaSequence, class Functor>
Functor CORBA_SeqUtil::for_each CorbaSequence &  seq,
Functor  f
 

CORBA sequence に対して functor を適用する

CORBA sequence 全ての要素に対して、与えられた functor を適用する。 functor は void functor(CORBA sequence の要素) の形式をとる必要がある。

戻り値:
全ての要素を処理した Functor
引数:
seq Functor を適用する CORBA sequence
functor CORBA sequence の要素を処理する Functor

template<class CorbaSequence, class SequenceElement>
SequenceElement& CORBA_SeqUtil::front CorbaSequence &  seq  ) 
 

CORBA sequence の先頭要素を取得する

seq[0] と同じ。

引数:
seq 要素を取得する CORBA sequence

template<class CorbaSequence, class SequenceElement>
void CORBA_SeqUtil::insert CorbaSequence &  seq,
SequenceElement &  elem,
CORBA::ULong  index
 

CORBA sequence に要素を挿入する

CORBA sequence の index の位置に要素を加える。 index が 与えられた CORBA sequence の最大の index より大きい場合 最後の要素として加えられる。 CORBA sequence の長さは自動的に拡張される。

引数:
seq 要素を追加する CORBA sequence
elem 追加する要素
index 要素を追加する位置

template<class CorbaSequence, class SequenceElement>
void CORBA_SeqUtil::push_back CorbaSequence &  seq,
SequenceElement  elem
 

CORBA sequence の最後に要素を追加する

CORBA sequence の最後に与えられた要素を追加する。 CORBA sequence の長さは自動的に拡張される。

引数:
seq 要素を追加する CORBA sequence
elem 追加する要素

template<class CorbaSequence>
void CORBA_SeqUtil::push_back_list CorbaSequence &  seq1,
const CorbaSequence &  seq2
 


OpenRTMに対してTue Sep 25 00:45:56 2007に生成されました。  doxygen 1.4.6