deferred class ISENSOR interfaced indexing about: "This interface represents an abstraction of sensor component."; author: "Dragan Stosic"; copyright: "none"; organisation: "School of Computer Science and Informatics, UCD"; date: "2009/07/05"; version: "Revision: 1.00"; feature mod_enabled: BOOLEAN ensure Result /= Void; end mod_max: INTEGER ensure Result /= Void; end mod_mesure: JMLDATA_GROUP ensure Result /= Void; end mod_min: INTEGER ensure Result /= Void; end mod_value: INTEGER ensure Result /= Void; end feature{SENSOR_CLUSTER} deferred getMax: INTEGER require isEnabled; ensure Result /= Void; Result = mod_max; end deferred getMin: INTEGER require isEnabled; ensure Result /= Void; Result = mod_min; end deferred getValue: INTEGER require isEnabled; ensure Result /= Void; Result = mod_value; end deferred isEnabled: BOOLEAN ensure Result /= Void; Result = mod_enabled; end deferred measure require isEnabled; ensure delta {mod_mesure, mod_value}; mod_min <= mod_value; mod_value <= mod_max; end deferred setEnable -> theFlag: BOOLEAN require theFlag /= Void; ensure delta mod_enabled; mod_enabled = theFlag; end end