ARCS6 AR6-REV.24062600
読み取り中…
検索中…
一致する文字列を見つけられません
ARCS::SFthread< SFA, SFK > クラステンプレート

実時間スレッド生成・破棄クラス [詳解]

#include <ARCS6/lib/SFthread.hh>

公開型

enum  ThreadState {
  SFID_ERROR , SFID_START , SFID_RUN , SFID_STOP ,
  SFID_EXCMPL , SFID_DSTRCT
}
 動作状態の定義 [詳解]
 

公開メンバ関数

 SFthread (const unsigned long PeriodTime, const std::function< bool(double, double, double)> &FuncObject, const int CPUno)
 コンストラクタ
 
 SFthread (const unsigned long PeriodTime, const int CPUno)
 コンストラクタ(制御用実行関数の関数オブジェクトを後で設定する場合)
 
 SFthread (SFthread &&r)
 ムーブコンストラクタ
 
 ~SFthread ()
 デストラクタ
 
void SetRealtimeFunction (std::function< bool(double, double, double)> FuncObject)
 実時間スレッドから呼び出す関数を設定する関数
 
void Start (void)
 スレッド実行を開始する関数
 
void WaitStart (void)
 スレッド実行が開始されるまで待機する関数
 
void Stop (void)
 スレッド実行を停止する関数
 
void WaitStop (void)
 スレッド実行が停止されるまで待機する関数
 
void Reset (void)
 スレッドをリセットする関数
 
void ForceDestruct (void)
 スレッドを強制破壊する関数
 
double GetTime (void) const
 時刻を取得する関数
 
double GetSmplTime (void) const
 計測された実際のサンプリング時間を取得する関数
 
double GetCompTime (void) const
 計測された消費時間を取得する関数
 
double GetMaxTime (void)
 計測された実際のサンプリング時間の最大値を取得する関数
 
double GetMinTime (void)
 計測された実際のサンプリング時間の最小値を取得する関数
 

詳解

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
class ARCS::SFthread< SFA, SFK >

実時間スレッド生成・破棄クラス

テンプレート引数
SFAリアルタイムアルゴリズムのタイプ

列挙型メンバ詳解

◆ ThreadState

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
enum ARCS::SFthread::ThreadState

動作状態の定義

列挙値
SFID_ERROR 

エラー検出

SFID_START 

開始

SFID_RUN 

動作中

SFID_STOP 

停止

SFID_EXCMPL 

終了動作完了

SFID_DSTRCT 

スレッド破棄

構築子と解体子

◆ SFthread() [1/3]

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
ARCS::SFthread< SFA, SFK >::SFthread ( const unsigned long PeriodTime,
const std::function< bool(double, double, double)> & FuncObject,
const int CPUno )
inline

コンストラクタ

引数
[in]PeriodTime制御周期
[in]FuncObject制御用実行関数の関数オブジェクト
[in]CPUno使用するCPUコアの番号

◆ SFthread() [2/3]

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
ARCS::SFthread< SFA, SFK >::SFthread ( const unsigned long PeriodTime,
const int CPUno )
inline

コンストラクタ(制御用実行関数の関数オブジェクトを後で設定する場合)

引数
[in]PeriodTime制御周期
[in]CPUno使用するCPUコアの番号

◆ SFthread() [3/3]

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
ARCS::SFthread< SFA, SFK >::SFthread ( SFthread< SFA, SFK > && r)
inline

ムーブコンストラクタ

引数
[in]r右辺値

関数詳解

◆ GetCompTime()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
double ARCS::SFthread< SFA, SFK >::GetCompTime ( void ) const
inline

計測された消費時間を取得する関数

戻り値
計測消費時間 [s]

◆ GetMaxTime()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
double ARCS::SFthread< SFA, SFK >::GetMaxTime ( void )
inline

計測された実際のサンプリング時間の最大値を取得する関数

戻り値
計測最大サンプリング時間 [s]

◆ GetMinTime()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
double ARCS::SFthread< SFA, SFK >::GetMinTime ( void )
inline

計測された実際のサンプリング時間の最小値を取得する関数

戻り値
計測最小サンプリング時間 [s]

◆ GetSmplTime()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
double ARCS::SFthread< SFA, SFK >::GetSmplTime ( void ) const
inline

計測された実際のサンプリング時間を取得する関数

戻り値
計測周期 [s]

◆ GetTime()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
double ARCS::SFthread< SFA, SFK >::GetTime ( void ) const
inline

時刻を取得する関数

戻り値
時刻 [s]

◆ SetRealtimeFunction()

template<SFalgorithm SFA = SFalgorithm::INSERT_ZEROSLEEP, SFkernelparam SFK = SFkernelparam::CFS_DISABLED>
void ARCS::SFthread< SFA, SFK >::SetRealtimeFunction ( std::function< bool(double, double, double)> FuncObject)
inline

実時間スレッドから呼び出す関数を設定する関数

引数
[in]FuncObject関数オブジェクト

このクラス詳解は次のファイルから抽出されました: