X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2FVehicle%2FVehicle.idl;h=56577998f4105d91c848b5832e768848fabde179;hb=HEAD;hp=42c4b997cb4ca3d01b2162d09b54e4e3d8d0b37a;hpb=b07163a296a46f479009d9b72ce85004a7dcacd2;p=profile%2Fivi%2Fwrt-plugins-ivi.git diff --git a/src/Vehicle/Vehicle.idl b/src/Vehicle/Vehicle.idl index 42c4b99..5657799 100644 --- a/src/Vehicle/Vehicle.idl +++ b/src/Vehicle/Vehicle.idl @@ -4,23 +4,27 @@ Details. \def-api-feature http://tizen.org/api/vehicle -\brief Allows access to the vehicle API - +\brief Allows access to the vehicle API */ -module Vehicle { -partial interface Navigator { - readonly attribute Vehicle vehicle; +[NoInterfaceObject] +interface VehicleManagerObject { + readonly attribute Vehicle vehicle; }; +Tizen implements VehicleManagerObject; + [NoInterfaceObject] -interface VehiclePropertyType: Event { - /** /brief time at which the vehicle generated the property +interface VehiclePropertyType { + /** Time + * \brief time at which the vehicle generated the property **/ - readonly attribute DOMTimeStamp time; + attribute DOMTimeStamp time; + attribute short zone; + attribute DOMString source; }; [NoInterfaceObject] @@ -33,12 +37,12 @@ interface VehiclePropertyError { /** code * MUST return error code. **/ - readonly attribute unsigned short code; + attribute unsigned short code; /** message * MUST return error message **/ - readonly attribute DOMString message; + attribute DOMString message; }; callback VehiclePropertyCallback = void (VehiclePropertyType value); @@ -53,77 +57,100 @@ callback SupportedPropertiesCallback = void (sequence properties); [NoInterfaceObject] interface Vehicle { - /** - * \brief returns supported properties - * \arg VehiclePropertyCallback successCallback function to be called when method has completed successfully - * \arg VehiclePropertyErrorCallback errorCallback this function is called when an error has occured. + const unsigned short ZONE_None = 0; + const unsigned short ZONE_Front = 0x01; + const unsigned short ZONE_Middle = 0x02; + const unsigned short ZONE_Right = 0x04; + const unsigned short ZONE_Left = 0x08; + const unsigned short ZONE_Rear = 0x10; + const unsigned short ZONE_Center = 0x20; + + /** + * \brief returns supported object types **/ - getSupported(SupportedPropertiesCallback successCallback, optional VehiclePropertyErrorCallback errorCallback); + sequence supported(); - /** - * \brief fetch the current value for 'property'. - * \arg DOMString property is the requested property to be retrieved. - * \returns object representing the requested 'property' + /** + * \brief fetch the current value for 'objectType'. + * \param objectType is the requested property to be retrieved. + * \param zone specify the zone in which this object type is in + * \return object representing the requested 'objectType' **/ - any get(DOMString property); + any get(DOMString objectType, optional short zone); + + + /** + * \brief fetch the current value for 'objectType' + * \param objectType is the requested property to be retrieved. + * \param successCallback is called with the result of the call + * \param errorCallback is called if there is an error + * \param zone specify the zone in which this object type is in + **/ + void getAsync(DOMString objectType, VehiclePropertyCallback successCallback, optional VehiclePropertyErrorCallback errorCb, optional short zone); /** \brief subscribe to the given property and get callbacks when it changes - * \arg DOMString property property to set - * \arg VehiclePropertyCallback successCallback callback if operation is successfull - * \arg VehiclePropertyErrorCallback errorCallback callback if error has been called. + * \param objectType property to set + * \param successCallback callback will be called when the "objectType" changes + * \param errorCallback callback if error has been called. **/ - subscribe(DOMString property, VehiclePropertyCallback successCallback, optional VehiclePropertyErrorCallback errorCallback); - - /** - * \brief set the given property to value - * \arg DOMString property property to set - * \arg VehiclePropertyType value value to set - * \arg VehiclePropertyCallback successCallback callback if operation is successfull - * \arg VehiclePropertyErrorCallback errorCallback callback if error has been called. - **/ - set(DOMString property, VehiclePropertyType value, optional VehiclePropertyCallback successCallback, optional VehiclePropertyErrorCallback errorCallback); - - /** - * \brief get values for a given property within a certain past time period between 'startTime' and 'endTime' - * \arg DOMString property property to request - * \arg Date startTime, starting period of time. - * \arg Date endTime, ending period of time. - * \arg VehiclePropertyListCallback successCallback. Callback with the result of the method call - * \arg VehiclePropertyErrorCallback errorCallback. Callback if an error has occurred. - **/ - getHistory(DOMString property, Date startTime, Date endTime, VehiclePropertyListCallback successCallback, optional VehiclePropertyErrorCallback errorCallback); + void subscribe(DOMString objectType, VehiclePropertyCallback successCallback, optional unsigned short zone, optional VehiclePropertyErrorCallback errorCallback); + + /** + * \brief set the given objectType to value + * \param objectType object type to set + * \param value value to set, should contain zone information if there is a zone ie "zone" : 0 + * \param errorCallback callback if error during set. + **/ + void set(DOMString objectType, object value, optional VehiclePropertyErrorCallback errorCallback); + + /** + * \brief get values for a given objectType within a certain past time period between 'startTime' and 'endTime' + * \param objectType object type to request + * \param zone in which the objectType is located or 0 if no zone. + * \param startTime starting period of time. + * \param endTime ending period of time. + * \param successCallback Callback with the result of the method call + * \param errorCallback Callback if an error has occurred. + **/ + void getHistory(DOMString objectType, unsigned short zone, Date startTime, Date endTime, VehiclePropertyListCallback successCallback, optional VehiclePropertyErrorCallback errorCallback); + + /** + * \brief list zones available for a given object type + * \param DOMString object type to request, ie "HVAC" + **/ + sequence listZones(DOMString objectType); }; [NoInterfaceObject] interface VehicleSpeed : VehiclePropertyType { /** VehicleSpeed - * \brief Must return Vehicle Speed in kilometers per hour. + * \brief Must return Vehicle Speed in kilometers per hour. **/ - readonly attribute unsigned long VehicleSpeed; + attribute unsigned long vehicleSpeed; }; [NoInterfaceObject] interface EngineSpeed : VehiclePropertyType { /** EngineSpeed - * \brief Must return Engine Speed in rotations per minute. + * \brief Must return Engine Speed in rotations per minute. **/ - readonly attribute unsigned long EngineSpeed; + attribute unsigned long engineSpeed; }; [NoInterfaceObject] interface VehiclePowerMode : VehiclePropertyType { - const unsigned short VEHICLEPOWERMODE_OFF = 0, - const unsigned short VEHICLEPOWERMODE_ACCESSORY1 = 1, - const unsigned short VEHICLEPOWERMODE_ACCESSORY2 = 2, - const unsigned short VEHICLEPOWERMODE_RUN = 3; + const unsigned short VEHICLEPOWERMODE_OFF = 0; + const unsigned short VEHICLEPOWERMODE_ACCESSORY1 = 1; + const unsigned short VEHICLEPOWERMODE_ACCESSORY2 = 2; + const unsigned short VEHICLEPOWERMODE_RUN = 3; /** VehiclePowerMode * \brief Must return Vehicle Power mode (see VEHICLEPOWERMODE) **/ - readonly attribute octet VehiclePowerMode; + attribute octet vehiclePowerMode; }; [NoInterfaceObject] @@ -132,7 +159,7 @@ interface TripMeter : VehiclePropertyType { /** TripMeters * \brief Must return trip meters. Changing any items in the array will reset the item's value to '0'. **/ - attribute sequence TripMeters; + attribute sequence tripMeters; }; [NoInterfaceObject] @@ -141,17 +168,17 @@ interface Acceleration : VehiclePropertyType { /** X * \brief Must return acceleration on the "X" axis as 1/1000 G (gravitational force). **/ - readonly attribute unsigned long X; + attribute unsigned long x; /** Y * \brief Must return acceleration on the "Y" axis as 1/1000 G (gravitational force). **/ - readonly attribute unsigned long Y; + attribute unsigned long y; /** Z * \brief Must return acceleration on the "Z" axis as 1/1000 G (gravitational force). **/ - readonly attribute unsigned long Z; + attribute unsigned long z; }; [NoInterfaceObject] @@ -179,12 +206,12 @@ interface Transmission : VehiclePropertyType { /** GearPosition * \brief Must return transmission gear position (see TRANSMISSIONPOSITION) **/ - readonly attribute octet GearPosition; + attribute octet gearPosition; /** Mode * \brief Must return transmission Mode (see **/ - readonly attribute octet Mode; + attribute octet mode; }; [NoInterfaceObject] @@ -193,12 +220,12 @@ interface CruiseControlStatus : VehiclePropertyType { /** Activated * \brief Must return whether or not the Cruise Control system is active (true) or inactive (false) **/ - readonly attribute boolean Activated; + attribute boolean activated; /** Speed * \brief Must return target Cruise Control speed in kilometers per hour (kph). **/ - readonly attribute unsigned short Speed; + attribute unsigned short speed; }; [NoInterfaceObject] @@ -207,7 +234,7 @@ interface WheelBrake : VehiclePropertyType { /** Engaged * \brief Must return Wheel Brake status: Engaged = true, disengaged = false **/ - readonly attribute boolean Engaged; + attribute boolean engaged; }; [NoInterfaceObject] @@ -216,42 +243,42 @@ interface LightStatus : VehiclePropertyType { /** Head * \brief Must return headlight status: on = true, off = false. **/ - readonly attribute boolean Head; + attribute boolean head; /** RightTurn * \brief Must return right turn signal status: on = true, off = false. **/ - readonly attribute boolean RightTurn; + attribute boolean rightTurn; /** LeftTurn * \brief Must return left turn signal status: on = true, off = false. **/ - readonly attribute boolean LeftTurn; + attribute boolean leftTurn; /** Brake * \brief Must return brake signal light status: on = true, off = false. **/ - readonly attribute boolean Brake; + attribute boolean brake; /** Fog * \brief Must return fog light status: on = true, off = false. **/ - readonly attribute boolean Fog; + attribute boolean fog; /** Hazard * \brief Must return hazard light status: on = true, off = false. **/ - readonly attribute boolean Hazard; + attribute boolean hazard; /** Parking * \brief Must return parking light status: on = true, off = false. **/ - readonly attribute boolean Parking; + attribute boolean parking; /** HighBeam * \brief Must return high beam status: on = true, off = false. **/ - readonly attribute boolean HighBeam; + attribute boolean highBeam; }; [NoInterfaceObject] @@ -260,17 +287,17 @@ interface InteriorLightStatus : VehiclePropertyType { /** Passenger * \brief Must return passenger interior light status: on = true, off = false **/ - readonly attribute boolean Passenger; + attribute boolean passenger; /** Driver * \brief Must return driver interior light status: on = true, off = false **/ - readonly attribute boolean Driver; + attribute boolean driver; /** Center * \brief Must return center interior light status: on = true, off = false **/ - readonly attribute boolean Center; + attribute boolean center; }; [NoInterfaceObject] @@ -279,7 +306,7 @@ interface Horn : VehiclePropertyType { /** On * \brief Must return horn status: on = true, off = false **/ - readonly attribute boolean On; + attribute boolean on; }; [NoInterfaceObject] @@ -288,27 +315,27 @@ interface Fuel : VehiclePropertyType { /** Level * \brief Must return fuel level as a percentage of fullness. **/ - readonly attribute unsigned short Level; + attribute unsigned short level; /** Range * \brief Must return estimated fuel range in kilometers. **/ - readonly attribute unsigned short Range; + attribute unsigned short range; /** InstantConsumption * \brief Must return instant fuel consumption in milliliters of fuel per second. **/ - readonly attribute unsigned short InstantConsumption; + attribute unsigned short instantConsumption; /** InstantEconomy * \brief Must return instant fuel 'economy' in kilometers per liter of fuel. **/ - readonly attribute unsigned short InstantEconomy; + attribute unsigned short instantEconomy; /** AverageEconomy * \brief Must return average fuel 'economy' in kilometers per liter of fuel since last reset. Setting this to any value should reset the counter to '0' **/ - attribute unsigned short AverageEconomy; + attribute unsigned short averageEconomy; }; [NoInterfaceObject] @@ -317,17 +344,17 @@ interface EngineOil : VehiclePropertyType { /** Remaining * \brief Must return remaining engine oil as percentage of fullness. **/ - readonly attribute unsigned short Remaining; + attribute unsigned short remaining; /** Temperature * \brief Must return Engine Oil Temperature in Celcius. **/ - readonly attribute long Temperature; + attribute long temperature; /** Pressure * \brief Must return Engine Oil Pressure in kPa. **/ - readonly attribute unsigned short Pressure; + attribute unsigned short pressure; }; [NoInterfaceObject] @@ -336,22 +363,22 @@ interface Location : VehiclePropertyType { /** Latitude * \brief Must return latitude in Deg.Min (-180, +180) **/ - readonly attribute double Latitude; + attribute double latitude; /** Longitude * \brief Must return longitude in Deg.Min (-90, +90) **/ - readonly attribute double Longitude; + attribute double longitude; /** Altitude * \brief Must return altitude in meters above sea-level (0). **/ - readonly attribute double Altitude; + attribute double altitude; /** Direction * \brief Must return direction in Degrees (0-360) **/ - readonly attribute unsigned short Direction; + attribute unsigned short direction; }; [NoInterfaceObject] @@ -360,7 +387,7 @@ interface ExteriorBrightness : VehiclePropertyType { /** ExteriorBrightness * \brief Must return the brightness outside the vehicle in lux. **/ - readonly attribute unsigned long ExteriorBrightness; + attribute unsigned long exteriorBrightness; }; [NoInterfaceObject] @@ -369,12 +396,12 @@ interface Temperature : VehiclePropertyType { /** Interior * \brief Must return the temperature of the interior of the vehicle in celcius. **/ - readonly attribute signed short Interior; + attribute short interior; /** Exterior * \brief Must return the temperature of the exterior of the vehicle in celcius. **/ - readonly attribute signed short Exterior; + attribute short exterior; }; [NoInterfaceObject] @@ -383,7 +410,7 @@ interface RainSensor : VehiclePropertyType { /** RainSensor * \brief Must return level of rain intensity 0: No Rain - 10: Heaviest Rain. **/ - readonly attribute unsigned short RainSensor; + attribute unsigned short rainSensor; }; [NoInterfaceObject] @@ -396,71 +423,65 @@ interface WindshieldWiper : VehiclePropertyType { /** WindshieldWiper * \brief Must return Level of windshield whiper speed (see WIPERSPEED) **/ - readonly attribute unsigned short WindshieldWiper; + attribute unsigned short windshieldWiper; }; dictionary DefrostDictionary { unsigned short window; boolean defrost; -} +}; [NoInterfaceObject] interface HVAC : VehiclePropertyType { - const unsigned short AIRFLOWDIRECTION_FRONTPANEL = 0; - const unsigned short AIRFLOWDIRECTION_FLOORDUCT= 1; - const unsigned short AIRFLOWDIRECTION_FRONT = 0x02; - const unsigned short AIRFLOWDIRECTION_DEFROSTER = 0x04; + const unsigned short AIRFLOWDIRECTION_FRONTPANEL = 0; + const unsigned short AIRFLOWDIRECTION_FLOORDUCT= 1; + const unsigned short AIRFLOWDIRECTION_FRONT = 0x02; + const unsigned short AIRFLOWDIRECTION_DEFROSTER = 0x04; /** AirflowDirection * \brief Must return airflow direction. See **/ - attribute unsigned short AirflowDirection; + attribute unsigned short airflowDirection; /** FanSpeed * \brief Must return speed of the fan (0-7) **/ - attribute unsigned short FanSpeed; + attribute unsigned short fanSpeed; /** TargetTemperature * \brief Must return target desired temperature in celcius. **/ - attribute unsigned short TargetTemperature; + attribute unsigned short targetTemperature; /** AirConditioning * \brief Must return air conditioning on (true) / off (false). **/ - attribute boolean AirConditioning; + attribute boolean airConditioning; /** AirRecirculation * \brief Must return air recirculation on (true) / off (false). **/ - readwrite attribute boolean AirRecirculation; + attribute boolean airRecirculation; /** Heater * \brief Must return heater on (true) / off (false). **/ - attribute boolean Heater; - - /** Defrost - * \brief Must return the defrost status of all windows equiped with defrosters. This will return a dictionary of DefrostDictionary that represents - * \brief each window and its defrost status. - **/ - attribute DefrostDictionary Defrost; + attribute boolean heater; /** SteeringWheelHeater * \brief Must return air recirculation on (true) / off (false). **/ - attribute boolean SteeringWheelHeater; + attribute boolean steeringWheelHeater; /** SeatHeater * \brief Must return seat heater status: on (true) / off (false). **/ - attribute boolean SeatHeater; + attribute boolean seatHeater; /** SeatCooler * \brief Must return seat heater status: on (true) / off (false). **/ - attribute boolean SeatCooler; + attribute boolean seatCooler; }; [NoInterfaceObject] @@ -471,11 +492,16 @@ interface WindowStatus : VehiclePropertyType { const unsigned short WINDOWLOCATION_RIGHTREAR = 3; const unsigned short WINDOWLOCATION_REAR = 4; - /** WindowStatus - * \brief Must return window status for each window location. object returned is a - * dictionary { unsigned short windowlocation, unsigned short percentage opened } + /** openness + * \brief Must return window openness percentage (100% fully open, 0% fully closed) + * for the window location see "zone" attribute **/ - readwrite attribute object WindowStatus; + attribute unsigned short openness; + + /** defrost + * \brief Must return the defroster status of the window. On = true, Off = false. + **/ + attribute boolean defrost; }; [NoInterfaceObject] @@ -484,12 +510,12 @@ interface Sunroof : VehiclePropertyType { /** Openness * \brief Must return window status for sunroof openness percentage. **/ - readwrite attribute unsigned short Openness; + attribute unsigned short openness; /** Tilt * \brief Must return tilt status for sunroof percentage. **/ - readwrite attribute unsigned short Tilt; + attribute unsigned short tilt; }; [NoInterfaceObject] @@ -498,7 +524,7 @@ interface ConvertibleRoof : VehiclePropertyType { /** Openness * \brief Must return window status for sunroof openness percentage. **/ - readwrite attribute unsigned short Openness; + attribute unsigned short openness; }; [NoInterfaceObject] @@ -508,12 +534,12 @@ interface VehicleId : VehiclePropertyType { * \brief MUST return World Manufacturer Identifier (WMI) * WMI is defined by SAE ISO 3780:2009. 3 characters. **/ - readonly attribute DOMString WMI; + attribute DOMString WMI; /** VIN * \brief MUST return Vehicle Identification Number (VIN) as defined by ISO 3779. 17 characters. **/ - readonly attribute DOMString VIN; + attribute DOMString VIN; }; [NoInterfaceObject] @@ -522,17 +548,17 @@ interface Size : VehiclePropertyType { /** Width * \brief MUST return width of vehicle in mm **/ - readonly attribute unsigned long Width; + attribute unsigned long width; /** Height * \brief MUST return height of vehicle in mm **/ - readonly attribute unsigned long Height; + attribute unsigned long height; /** Length * \brief MUST return length of vehicle in mm **/ - readonly attribute unsigned long Length; + attribute unsigned long length; }; [NoInterfaceObject] @@ -550,12 +576,12 @@ interface FuelInfo : VehiclePropertyType { /** Type * \brief MUST return type of fuel. integer 0-4 (see **/ - readonly attribute unsigned short Type; + attribute unsigned short type; /** RefuelPosition * \brief MUST return position of refuling (see **/ - readonly attribute unsigned short RefuelPosition; + attribute unsigned short refuelPosition; }; [NoInterfaceObject] @@ -570,7 +596,7 @@ interface VehicleType : VehiclePropertyType { /** Type * \brief MUST return type of Vehicle. Integer 0-5 (see **/ - readonly attribute unsigned short Type; + attribute unsigned short type; }; [NoInterfaceObject] @@ -582,7 +608,7 @@ interface Doors : VehiclePropertyType { * Example a common mini-van may have Doors[0] = 2 doors, * Doors[1] = 1 (side door), Doors[2] = 1 (trunk). **/ - readonly attribute sequence DoorsPerRow; + attribute sequence doorsPerRow; }; [NoInterfaceObject] @@ -594,7 +620,7 @@ interface TransmissionGearType : VehiclePropertyType { /** TransmissionGearType * \brief MUST return transmission gear type of either Automatic, Manual or Constant Variable (CV). See **/ - readonly attribute unsigned short TransmissionGearType; + attribute unsigned short transmissionGearType; }; [NoInterfaceObject] @@ -603,22 +629,22 @@ interface WheelInformation : VehiclePropertyType { /** FrontWheelRadius * \brief MUST return Radius of Front Wheel(s) in mm. **/ - readonly attribute unsigned short FrontWheelRadius; + attribute unsigned short frontWheelRadius; /** RearWheelRadius * \brief MUST return Radius of Rear Wheel(s) in mm. **/ - readonly attribute unsigned short RearWheelRadius; + attribute unsigned short rearWheelRadius; /** WheelTrack * \brief MUST return Wheel Track in mm. **/ - readonly attribute unsigned long WheelTrack; + attribute unsigned long wheelTrack; /** ABS * \brief MUST return Antilock Brake System status: on = true, off = false. **/ - readonly attribute boolean ABS; + attribute boolean ABS; }; [NoInterfaceObject] @@ -627,7 +653,7 @@ interface Odometer : VehiclePropertyType { /** Odometer * \brief MUST return Distance traveled in km **/ - readonly attribute unsigned long Odometer; + attribute unsigned long odometer; }; [NoInterfaceObject] @@ -636,17 +662,17 @@ interface Fluid : VehiclePropertyType { /** Transmission * \brief MUST return Transmission fluid level percentage. 0-100. **/ - readonly attribute unsigned short Transmission; + attribute unsigned short transmission; /** Brake * \brief MUST return Brake fluid level percentage. 0-100. **/ - readonly attribute unsigned short Brake; + attribute unsigned short brake; /** Washer * \brief MUST return Washer fluid level percentage. 0-100. **/ - readonly attribute unsigned short Washer; + attribute unsigned short washer; }; [NoInterfaceObject] @@ -655,12 +681,12 @@ interface Battery : VehiclePropertyType { /** Voltage * \brief MUST return battery voltage. **/ - readonly attribute double Voltage; + attribute double voltage; /** Current * \brief MUST return battery current in Amperes **/ - readonly attribute double Current; + attribute double current; }; [NoInterfaceObject] @@ -669,22 +695,22 @@ interface TirePressure : VehiclePropertyType { /** LeftFront * \brief MUST return left front tire pressure in kPa. **/ - readonly attribute double LeftFront; + attribute double leftFront; /** RightFront * \brief MUST return right front tire pressure in kPa. **/ - readonly attribute double RightFront; + attribute double rightFront; /** LeftRear * \brief MUST return left rear tire pressure in kPa. **/ - readonly attribute double LeftRear; + attribute double leftRear; /** RightRear * \brief MUST return right rear tire pressure in kPa. **/ - readonly attribute double RightRear; + attribute double rightRear; }; [NoInterfaceObject] @@ -693,22 +719,22 @@ interface TireTemperature : VehiclePropertyType { /** LeftFront * \brief MUST return left front tire temperature in Celcius. **/ - readonly attribute double LeftFront; + attribute double leftFront; /** RightFront * \brief MUST return right front tire temperature in Celcius. **/ - readonly attribute double RightFront; + attribute double rightFront; /** LeftRear * \brief MUST return left rear tire temperature in Celcius. **/ - readonly attribute double LeftRear; + attribute double leftRear; /** RightRear * \brief MUST return right rear tire temperature in Celcius. **/ - readonly attribute double RightRear; + attribute double rightRear; }; [NoInterfaceObject] @@ -717,7 +743,7 @@ interface SecurityAlert : VehiclePropertyType { /** SecurityAlert * \brief MUST return **/ - readonly attribute boolean SecurityAlert; + attribute boolean securityAlert; }; [NoInterfaceObject] @@ -726,7 +752,7 @@ interface ParkingBrake : VehiclePropertyType { /** ParkingBrake * must return status of parking brake: Engaged = true, Disengaged = false. **/ - readonly attribute boolean ParkingBrake; + attribute boolean parkingBrake; }; [NoInterfaceObject] @@ -735,7 +761,7 @@ interface ParkingLight : VehiclePropertyType { /** ParkingLight * must return status of parking light: Engaged = true, Disengaged = false. **/ - readonly attribute boolean ParkingLight; + attribute boolean parkingLight; }; [NoInterfaceObject] @@ -744,7 +770,7 @@ interface HazardLight : VehiclePropertyType { /** HazardLight * must return status of hazard light: Engaged = true, Disengaged = false. **/ - readonly attribute boolean HazardLight; + attribute boolean hazardLight; }; [NoInterfaceObject] @@ -753,7 +779,7 @@ interface AntilockBrakingSystem : VehiclePropertyType { /** AntilockBrakingSystem * \brief MUST return whether Antilock Braking System is Idle (false) or Engaged (true) **/ - readonly attribute boolean AntilockBrakingSystem; + attribute boolean antilockBrakingSystem; }; [NoInterfaceObject] @@ -762,7 +788,7 @@ interface TractionControlSystem : VehiclePropertyType { /** TractionControlSystem * \brief MUST return whether Traction Control System is Off (false) or On (true) **/ - readonly attribute boolean TractionControlSystem; + attribute boolean tractionControlSystem; }; [NoInterfaceObject] @@ -771,87 +797,64 @@ interface VehicleTopSpeedLimit : VehiclePropertyType { /** VehicleTopSpeedLimit * \brief MUST returns top rated speed in km/h. 0 = no limit **/ - readonly attribute unsigned short VehicleTopSpeedLimit; + attribute unsigned short vehicleTopSpeedLimit; }; [NoInterfaceObject] -interface AirbagStatus : VehiclePropertyType { - const unsigned short AIRBAGLOCATION_DRIVER = 0; - const unsigned short AIRBAGLOCATION_PASSENGER= 1; - const unsigned short AIRBAGLOCATION_LEFTSIDE = 2; - const unsigned short AIRBAGLOCATION_RIGHTSIDE = 3; +interface AirbagStatus : VehiclePropertyType { const unsigned short AIRBAGSTATUS_INACTIVE = 0; const unsigned short AIRBAGSTATUS_ACTIVE = 1; const unsigned short AIRBAGSTATUS_DEPLOYED = 2; /** AirbagStatus - * \brief MUST returns a dictionary of Airbag (byte) and Status (byte) (see + * \brief MUST return Airbag deployment status (see AIRBAGSTATUS*) **/ - readonly attribute object AirbagStatus; + attribute unsigned short airbagStatus; }; [NoInterfaceObject] interface DoorStatus : VehiclePropertyType { - const unsigned short DOORLOCATION_DRIVER= 0; - const unsigned short DOORLOCATION_PASSENGER = 1; - const unsigned short DOORLOCATION_LEFTREAR = 2; - const unsigned short DOORLOCATION_RIGHTREAR = 3; - const unsigned short DOORLOCATION_TRUNK = 4; - const unsigned short DOORLOCATION_FUELCAP = 5; - const unsigned short DOORLOCATION_HOOD = 6; const unsigned short DOORSTATUS_CLOSED = 0; const unsigned short DOORSTATUS_OPEN = 1; const unsigned short DOORSTATUS_AJAR = 2; - /** DoorStatus - * \brief MUST returns dictionary of Door (byte) and Status (byte). See + /** DoorStatus + * \brief MUST returns Door status (byte). See DOORSTATUS_* **/ - readonly attribute object DoorStatus; + attribute unsigned short doorStatus; /** DoorLockStatus - * \brief MUST returns dictionary of Door (byte) and Status (bool locked = true, unlocked = false). See + * \brief MUST returns Door status (bool locked = true, unlocked = false). **/ - readonly attribute object DoorLockStatus; + attribute boolean doorLockStatus; /** ChildLockStatus * \brief MUST returns Child lock status of rear doors. active = true, inactive = false. * Setting this to 'true' will prevent the rear doors from being opened * from the inside. **/ - readonly attribute boolean ChildLockStatus; + attribute boolean childLockStatus; }; [NoInterfaceObject] interface SeatBeltStatus : VehiclePropertyType { - const unsigned short SEATBELTLOCATION_DRIVER= 0; - const unsigned short SEATBELTLOCATION_MIDDLEFRONT = 1; - const unsigned short SEATBELTLOCATION_PASSENGER = 2; - const unsigned short SEATBELTLOCATION_LEFTREAR = 3; - const unsigned short SEATBELTLOCATION_MIDDLEREAR = 4; - const unsigned short SEATBELTLOCATION_RIGHTREAR = 5; /** SeatBeltStatus - * \brief MUST returns dictionary of Seat Belt (byte, see SEATBELTLOCATION) and Status (bool: Fasten = true, Unfastened = false) + * \brief MUST return Seat Belt status (bool: Fasten = true, Unfastened = false) **/ - readonly attribute object SeatBeltStatus; + attribute boolean seatBeltStatus; }; [NoInterfaceObject] -interface OccupantStatus : VehiclePropertyType { - const unsigned short OCCUPANTLOCATION_DRIVER = 0; - const unsigned short OCCUPANTLOCATION_FRONTMIDDLE = 1; - const unsigned short OCCUPANTLOCATION_PASSENGER= 2; - const unsigned short OCCUPANTLOCATION_LEFTREAR = 3; - const unsigned short OCCUPANTLOCATION_MIDDLEREAR = 4; - const unsigned short OCCUPANTLOCATION_RIGHTREAR = 5; +interface OccupantStatus : VehiclePropertyType { const unsigned short OCCUPANTSTATUS_VACANT = 0; const unsigned short OCCUPANTSTATUS_CHILD = 1; const unsigned short OCCUPANTSTATUS_ADULT = 2; /** OccupantStatus - * \brief MUST returns dictionary of Occupant (byte see OCCUPANTLOCATION) and Status (byte, see + * \brief MUST returns Occupant status (byte, see OCCUPANTSTATUS) **/ - readonly attribute object OccupantStatus; + attribute unsigned short occupantStatus; }; [NoInterfaceObject] @@ -864,10 +867,28 @@ interface ObstacleDistance : VehiclePropertyType { const unsigned short DISTANCESENSORLOCATION_RIGHTBLINDSPOT = 5; /** ObstacleDistance - * \brief MUST returns dictionary of Distance Sensor (byte, see DISTANCESENSORLOCATION) and distance (double) in m. + * \brief MUST returns Distance Sensor distance (Double) in m. **/ - readonly attribute object ObstacleDistance; + attribute double obstacleDistance; +}; + +[NoInterfaceObject] +interface NightMode : VehiclePropertyType { + + /*! + * \brief MUST return whether or not the system is in NightMode or not. True = Night time, False = Day time + **/ + attribute boolean nightMode; }; +[NoInterfaceObject] +interface DrivingMode : VehiclePropertyType { + + /** + * \brief MUST return whether or not the system is in DrivingMode or not. 1 = Driving, 0 = Not Driving + **/ + attribute unsigned short drivingMode; }; + +