Capability
物理デバイスの各機能をモデル化する抽象クラスがあります。次に、などのサブクラスがInputSwitch
あり、TemperatureSensor
それぞれが異なるイベントを発生させることができます。
InputSwitch
はかなり簡単です。物理スイッチを押すと、それを表すオブジェクトがイベントを発生させますTriggered
。
TemperatureSensor
2つのイベントがあるという点で少し複雑です-TemperatureOK
とTemperatureAlarm
。
これらの2つのサブクラスだけでなく、それぞれが発生させる可能性のあるイベントが異なります。実行時に追加されたサブクラスのインスタンスがさらに存在する場合もあります。
エンドユーザーは、これらのイベントがトリガーされたときに何が発生するかを指定できる必要があるため、基本的に、ユーザーがすべてのCapability
インスタンスで発生する可能性のあるイベントを参照できるようにすることを検討しています。各機能は現在、に保存されていList<Capability>
ます。
利用可能なイベントを列挙する方法はありますか?