AM Daemon ライブラリリファレンス
JvsNode.h
[詳解]
1 /// @file
2 /// @brief JVSボード単体の入出力処理を提供するクラス JvsNode のヘッダ。
3 ///
4 /// Copyright(C)SEGA
5 
6 #ifndef AMDAEMON_JVSNODE_H
7 #define AMDAEMON_JVSNODE_H
8 
9 #include "amdaemon/env.h"
14 
15 namespace amdaemon
16 {
17 /// @addtogroup g_jvs
18 /// @{
19 
20  // 内部クラスの前方宣言
21  class InnerIndexHolder;
22 
23  /// @brief JVSボード単体の入出力処理を提供するクラス。
24  /// @see Jvs
25  ///
26  /// このクラスのインスタンスをアプリ側で直接生成することはできない。
27  /// Jvs クラスのメンバ関数 Jvs#getNode から取得すること。
28  class JvsNode
29  {
30  public:
31  /// @brief コンストラクタ。
32  /// @note アプリ側からは利用できない。
33  explicit JvsNode(InnerIndexHolder);
34 
35  // 下記は暗黙の定義を用いる。
36  //‾JvsNode() = default;
37 
38  /// @brief スイッチ入力情報インスタンスを取得する。
39  /// @return スイッチ入力情報インスタンス。
41  {
42  return _switchInput;
43  }
44 
45  /// @brief アナログ入力情報インスタンスを取得する。
46  /// @return アナログ入力情報インスタンス。
48  {
49  return _analogInput;
50  }
51 
52  /// @brief ロータリ入力情報インスタンスを取得する。
53  /// @return ロータリ入力情報インスタンス。
55  {
56  return _rotaryInput;
57  }
58 
59  /// @brief 汎用ドライバ出力処理インスタンスを取得する。
60  /// @return 汎用ドライバ出力処理インスタンス。
62  {
63  return _generalOutput;
64  }
65 
66  /// @copydoc getGeneralOutput
68  {
69  return _generalOutput;
70  }
71 
72  private:
73  JvsSwitchInput _switchInput; ///< スイッチ入力。
74  JvsAnalogInput _analogInput; ///< アナログ入力。
75  JvsRotaryInput _rotaryInput; ///< ロータリ入力。
76  JvsGeneralOutput _generalOutput; ///< 汎用デバイス出力。
77 
78  private:
79  // コピー禁止
80  JvsNode(const JvsNode&); // 宣言のみ
81  JvsNode& operator=(const JvsNode&); // 宣言のみ
82  };
83 
84 /// @}
85 } // namespace amdaemon
86 
87 #endif // AMDAEMON_JVSNODE_H
JVSボード単体の入出力処理を提供するクラス。
Definition: JvsNode.h:28
const JvsAnalogInput & getAnalogInput() const
アナログ入力情報インスタンスを取得する。
Definition: JvsNode.h:47
JVS汎用ドライバ出力処理を行うクラス JvsGeneralOutput のヘッダ。
const JvsSwitchInput & getSwitchInput() const
スイッチ入力情報インスタンスを取得する。
Definition: JvsNode.h:40
JvsGeneralOutput & getGeneralOutput()
汎用ドライバ出力処理インスタンスを取得する。
Definition: JvsNode.h:61
JVSロータリ入力情報を提供するクラス JvsRotaryInput のヘッダ。
JVSロータリ入力情報を提供するクラス。
Definition: JvsRotaryInput.h:29
JvsNode(InnerIndexHolder)
コンストラクタ。
Daemonライブラリの環境定義を行うヘッダ。
AM Daemon ライブラリクラス群の基底名前空間。
Definition: Log.h:13
JVSアナログ入力情報を提供するクラス JvsAnalogInput のヘッダ。
const JvsGeneralOutput & getGeneralOutput() const
汎用ドライバ出力処理インスタンスを取得する。
Definition: JvsNode.h:67
JVSスイッチ入力情報を提供するクラス。
Definition: JvsSwitchInput.h:29
JVSスイッチ入力情報を提供するクラス JvsSwitchInput のヘッダ。
JVSアナログ入力情報を提供するクラス。
Definition: JvsAnalogInput.h:29
JVS汎用ドライバ出力処理を行うクラス。
Definition: JvsGeneralOutput.h:27
const JvsRotaryInput & getRotaryInput() const
ロータリ入力情報インスタンスを取得する。
Definition: JvsNode.h:54