ARTSAT API
2.7.1
|
すべての衛星に共通する基本的な機能を提供するクラス [詳細]
構成 | |
class | Notifier |
通知を受け取るための機能を提供するクラス [詳細] | |
struct | TLERec |
TLE (2行軌道要素形式) を表す構造体 [詳細] | |
Public メソッド | |
virtual | ~ofxSAT (void)=0 |
std::string const & | getID (void) const |
ofxSATError | getTLE (TLERec *tle, ofxSATTime *time=NULL) const |
virtual ofxSATError | getAvailableCount (int *result) const |
virtual ofxSATError | getAvailableCount (ofxSATTime const &begin, ofxSATTime const &end, int *result) const |
virtual ofxSATError | getAvailableTime (std::vector< ofxSATTime > *result) const |
virtual ofxSATError | getAvailableTime (ofxSATTime const &begin, ofxSATTime const &end, std::vector< ofxSATTime > *result) const |
virtual ofxSATError | getSensorFormat (SensorType sensor, FormatEnum *result) const |
virtual ofxSATError | getSensorUnit (SensorType sensor, UnitEnum *result) const |
virtual ofxSATError | getSensorMinimum (SensorType sensor, void *result, int size) const |
virtual ofxSATError | getSensorMaximum (SensorType sensor, void *result, int size) const |
virtual ofxSATError | getSensorData (SensorType sensor, ofxSATTime const &time, void *result, int size, bool *simulation=NULL) const |
ofxSATError | setNotifier (Notifier *param) |
Notifier * | getNotifier (void) const |
bool | isValid (void) const |
virtual ofxSATError | setup (void) |
virtual void | cleanup (void) |
virtual ofxSATError | update (ofxSATTime const &time=ofxSATTime::currentTime()) |
Protected メソッド | |
ofxSAT (void) | |
void | setID (std::string const ¶m) |
void | setTLE (TLERec const &tle, ofxSATTime const &time) |
void | notifyData (ofxSATTime const &time) const |
void | notifyFinish (ofxSATError const &error) const |
Static Protected メソッド | |
static std::string | trimSpace (std::string const ¶m) |
static std::string | trimNonNumeric (std::string const ¶m) |
static std::string | replaceString (std::string const &string, std::string const &from, std::string const &to) |
static ofxSATError | checkSize (FormatEnum format, int size) |
すべての衛星に共通する基本的な機能を提供するクラス
ofxSAT クラスはすべての衛星に共通する機能やインターフェースを定義します。 さまざまな具体的な衛星を表すクラスは ofxSAT クラスを継承します。 ofxSAT クラスはインターフェースクラスであるので直接インスタンスを生成することはできません。
いくつかの関数は呼び出し後に結果を通知として非同期に返すことがあります。 Notifier クラスを継承したクラスを作成し Notifier クラスが定義する仮想関数を オーバーライトし setNotifier() 関数を呼び出すことで通知を受け取ることができます。
typedef ofxSAT ofxSAT::self |
自クラスを表す型の別名です。
typedef int ofxSAT::SensorType |
センサを表す型です。 ofxSAT::SensorEnum 型は直接使用されることはなくセンサを表すには ofxSAT::SensorType 型を使用します。 ofxSAT::SensorType 型の変数には ofxSAT::SensorEnum 型の定数を代入します。
enum ofxSAT::SensorEnum |
衛星がサポートしているセンサを表す定数です。 ofxSAT::SENSOR_LIMIT は具体的なセンサを表す値ではなくセンサ定数の最大値を表します。
enum ofxSAT::FormatEnum |
センサの値の書式を表す定数です。 ofxSAT::FORMAT_LIMIT は具体的な書式を表す値ではなく書式定数の最大値を表します。
enum ofxSAT::UnitEnum |
センサの値の単位を表す定数です。 ofxSAT::UNIT_LIMIT は具体的な単位を表す値ではなく単位定数の最大値を表します。
|
pure virtual |
デストラクタです。 管理しているリソースを解放します。
|
explicitprotected |
コンストラクタです。 初期化に必要な最低限の処理をおこないます。
std::string const & ofxSAT::getID | ( | void | ) | const |
ID を取得します。
ofxSATError ofxSAT::getTLE | ( | TLERec * | tle, |
ofxSATTime * | time = NULL |
||
) | const |
TLE 情報と TLE を取得した時刻を取得します。 tle パラメータは NULL を指定できませんが、time パラメータは NULL を指定してもかまいません。
[out] | tle | TLE 情報 |
[out] | time | TLE を取得した時刻
|
SATERROR_OK | 正常終了 |
SATERROR_INVALID_STATE | TLE 情報が設定されていない |
SATERROR_INVALID_PARAM | tle パラメータが不正 |
|
virtual |
センサデータを取得可能な時刻の数を取得します。
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
引数に指定した時間範囲の中でセンサデータを取得可能な時刻の数を取得します。 時間範囲は [begin, end) で指定します。
[in] | begin | 開始時刻(以上) |
[in] | end | 終了時刻(未満) |
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサデータを取得可能な時刻のリストを取得します。
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
引数に指定した時間範囲の中でセンサデータを取得可能な時刻のリストを取得します。 時間範囲は [begin, end) で指定します。
[in] | begin | 開始時刻(以上) |
[in] | end | 終了時刻(未満) |
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサの種類に応じた書式を取得します。
[in] | sensor | ofxSAT::SensorEnum 型のセンサ定数 |
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサの種類に応じた単位を取得します。
[in] | sensor | ofxSAT::SensorEnum 型のセンサ定数 |
[out] | result | 取得結果 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサの種類に応じた最小値を取得します。
[in] | sensor | ofxSAT::SensorEnum 型のセンサ定数 |
[out] | result | 取得結果 |
[in] | size | result に指定した変数のバイト数 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサの種類に応じた最大値を取得します。
[in] | sensor | ofxSAT::SensorEnum 型のセンサ定数 |
[out] | result | 取得結果 |
[in] | size | result に指定した変数のバイト数 |
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
SATERROR_INVALID_PARAM | パラメータが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
|
virtual |
センサの種類に応じた指定された時刻のデータを取得します。 データ自体を取得する必要がないときは result 引数に NULL を、 シミュレーションか否かを取得する必要がときには simulation 引数に NULL を指定することができます。
使い方1:データとシミュレーション結果を取得するとき
使い方2:データのみを取得するとき
[in] | sensor | ofxSAT::SensorEnum 型のセンサ定数 |
[in] | time | データを取得する時刻 |
[out] | result | 取得結果
|
[in] | size | result に指定した変数のバイト数 |
[out] | simulation | 取得結果はシミュレーション
|
SATERROR_NO_SUPPORT | 未サポート(正常終了) |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
ofxInvaderSAT, ofxEasyCubeSAT, と ofxSATTemplateで再定義されています。
ofxSATError ofxSAT::setNotifier | ( | Notifier * | param | ) |
通知先クラスを設定します。 setup() 関数を呼び出す前に通知先を設定します。 引数に NULL を指定すると通知されなくなります。
[in] | param | 通知先クラスのインスタンスへのポインタ
|
SATERROR_OK | 正常終了 |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
ofxSAT::Notifier * ofxSAT::getNotifier | ( | void | ) | const |
通知先クラスを取得します。
NULL | 通知先クラスは設定されていない |
その他 |
bool ofxSAT::isValid | ( | void | ) | const |
|
virtual |
データの取得やさまざまな機能を利用できるように初期化をおこないます。
SATERROR_OK | 正常終了 |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
ofxEasyCubeSAT, ofxInvaderSAT, ofxSATTemplate, ofxSATLocalDB, と ofxSATRemoteDBで再定義されています。
|
virtual |
データの取得やさまざまな機能を利用するために確保したリソースを解放します。
ofxEasyCubeSAT, ofxInvaderSAT, ofxSATTemplate, ofxSATLocalDB, と ofxSATRemoteDBで再定義されています。
|
virtual |
希望する時刻のデータを更新するように要求します。
[in] | time | 希望する時刻 |
SATERROR_OK | 正常終了 |
SATERROR_INVALID_STATE | 呼び出すタイミングが不正 |
ofxEasyCubeSAT, ofxInvaderSAT, と ofxSATTemplateで再定義されています。
|
protected |
ID を設定します。
[in] | param | 設定する ID |
|
protected |
TLE 情報と TLE を取得した時刻を設定します。 通知先クラスが設定されていて TLE 情報もしくは時刻が更新されたときには、 通知先クラスの Notifier::onNotifyTLE() 関数を ofEvent を利用してスレッドセーフに呼び出します。
[in] | tle | TLE 情報 |
[in] | time | TLE を取得した時刻 |
|
protected |
通知先クラスが設定されているときには、 通知先クラスの Notifier::onNotifyData() 関数を ofEvent を利用してスレッドセーフに呼び出します。
[in] | time | 新しいデータの時刻 |
|
protected |
通知先クラスが設定されているときには、 通知先クラスの Notifier::onNotifyFinish() 関数を ofEvent を利用してスレッドセーフに呼び出します。
[in] | error | エラー情報 |
|
staticprotected |
引数に指定した文字列から半角スペースをすべて削除します。
[in] | param | 文字列 |
|
staticprotected |
引数に指定した文字列から半角数字と '+', '-', '.' 以外の文字をすべて削除します。
[in] | param | 文字列 |
|
staticprotected |
引数に指定した文字列の中の特定の文字列を新しい文字列にすべて置換します。
[in] | string | 処理対象の文字列 |
[in] | from | 置換される文字列 |
[in] | to | 置換する文字列 |
|
staticprotected |
format 引数に指定した書式のデータを表現するのに必要なバイト数よりも size 引数に指定した値が大きいかどうかを検証します。
[in] | format | 書式 |
[in] | size | バイト数 |
SATERROR_OK | size >= 必要なバイト数 |
SATERROR_FAILED | 書式が不正 |
SATERROR_INVALID_PARAM | size < 必要なバイト数 |