aaiavehicleidl
//
// typelib filename: AAIAVehicle.TLB
//
// Copyright 2000, Automotive Aftermarket Industry Association
//
// This publication cannot be reproduced, stored in a retrieval system or transmitted in whole
// or in part, in any form, or by any means, electronic, mechanical, photocopying, recording, or
// otherwise, without the prior written permission of the Automotive Aftermarket Industry
// Association.
//
// June 27, 2000
//
#include "AAIADISPID.H"
[
uuid(DA98DA00-281D-11d4-B124-00500495E912),
helpstring("AAIA Vehicle 0.2 Interface Library"),
version(0.2)
]
library AAIAVehicleLib
{
// TLib : // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
importlib("StdOle2.Tlb");
// TLib : AAIA Photos 0.2 Interface Library : {3A5A7460-E2DE-11D3-B124-00500495E912}
importlib("AAIAPhoto.tlb");
// TLib : AAIA Customer 0.2 Interface Library : {D16DFA20-1F74-11D4-B124-00500495E912}
importlib("AAIACustomer.tlb");
// Forward declare all types defined in this typelib
interface IAAIAVehicle;
interface IAAIAVehicleQualifier;
interface IAAIAVehicleQualifierCollection;
interface IAAIAVehicleNavigator;
interface IAAIAVehicleChoiceGroupCollection;
interface IAAIAVehicleChoiceGroup;
// import ("Wtypes.idl")
typedef Boolean VARIANT_BOOL;
[
odl,
uuid(DA98DA01-281D-11d4-B124-00500495E912),
version(0.2),
helpstring("AAIA IAAIAVehicle 0.2 Interface"),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicle : IDispatch {
[id(1), propget, helpstring("AAIA Id identifying the vehicle configuration. May be specificly set or derived from the Qualifiers.")]
HRESULT AAIAid([out, retval] long* lValue);
[id(1), propput, helpstring("AAIA Id identifying the vehicle configuration.")]
HRESULT AAIAid([in] long lValue);
[id(2), helpstring("Returns the AAIA Id identifying the vehicle configuration. Client controls the dynamic determination of the AAIA Id from the qualifiers.")]
HRESULT GetAAIAidValue(
[in, defaultvalue(0)] VARIANT_BOOL ResolveQualifiers,
[out, retval] long* lValue);
[id(3), propget, helpstring("Customer responsible for the vehicle.")]
HRESULT Customer([out, retval] IAAIACustomer** oCustomer);
[id(4), propget, helpstring("Government Id identifying the vehicle or configuration.")]
HRESULT GovernmentId([out, retval] BSTR* sGovId);
[id(4), propput, helpstring("Government Id identifying the vehicle or configuration.")]
HRESULT GovernmentId([in ] BSTR* sGovId);
[id(5), propget, helpstring("Date of last inspoection.")]
HRESULT InspectionDate([out, retval] DATE* dtInspect);
[id(5), propput, helpstring("Date of last inspection.")]
HRESULT InspectionDate([in] DATE dtInspect);
[id(6), propget, helpstring("Date the vehicle was last in this shop.")]
HRESULT LastInDate([out, retval] DATE* dtLastIn);
[id(6), propput, helpstring("Date the vehicle was last in this shop.")]
HRESULT LastInDate([in ] DATE* dtLastIn);
[id(7), propget, helpstring("Odometer reading when the vehicle was last in this shop.")]
HRESULT LastOdometer([out, retval] long* lOdometer);
[id(7), propput, helpstring("Odometer reading when the vehicle was last in this shop.")]
HRESULT LastOdometer([in ] long* lOdometer);
[id(8), propget, helpstring("Country in which the vehicle is licensed.")]
HRESULT LicenseCountry([out, retval] BSTR* sCountry);
[id(8), propput, helpstring("Country in which the vehicle is licensed.")]
HRESULT LicenseCountry([in] BSTR* sCountry);
[id(9), propget, helpstring("License number of the vehicle.")]
HRESULT LicensePlate([out, retval] BSTR* sLicense);
[id(9), propput, helpstring("License number of the vehicle.")]
HRESULT LicensePlate([in] BSTR sLicense);
[id(10), propget,helpstring("State or province in which the vehicle is licensed.")]
HRESULT LicenseState([out, retval] BSTR* sState);
[id(10), propput,helpstring("State or province in which the vehicle is licensed.")]
HRESULT LicenseState([in ] BSTR* sState);
[id(DISPID_AAIA_NOTE), propget,helpstring("Freeform note about the vehicle.")]
HRESULT Note([out, retval] BSTR* sNote);
[id(DISPID_AAIA_NOTE), propput,helpstring("Freeform note about the vehicle.")]
HRESULT Note([in] BSTR sNote);
[id(11), propget,helpstring("Photos related to the vehicle.")]
HRESULT Photos([out, retval] IAAIAPhotoCollection** oPhotos);
[id(12), propget,helpstring("Qualifiers defining various aspects of the vehicle configuration.")]
HRESULT Qualifiers([out, retval] IAAIAVehicleQualifierCollection** oQualifiers);
[id(13), helpstring("Provides a navigation interface for the specified qualifier table (owner).")]
HRESULT GetNavigator(
[in, defaultvalue("")] BSTR sOwner,
[out, retval] IAAIAVehicleNavigator** oNavigator);
[id(14), propget,helpstring("Fleet unit Nnumber of the vehicle.")]
HRESULT UnitNumber([out, retval] BSTR* sUnit);
[id(14), propput,helpstring("Fleet unit Nnumber of the vehicle.")]
HRESULT UnitNumber([in] BSTR sUnit);
[id(15), propget,helpstring("Unique identifier for persistend vehicles.")]
HRESULT VehicleId([out, retval] BSTR* sId);
[id(16), propput,helpstring("Unique identifier for persistend vehicles.")]
HRESULT VIN([in] BSTR sVin);
[id(16), propget,helpstring("Full Vehicle Identification Number (VIN) or Chasis Number.")]
HRESULT VIN([out, retval] BSTR* sVin);
};
[
odl,
uuid(DA98DA02-281D-11d4-B124-00500495E912),
helpstring("AAIA IAAIAVehicleQualifier 0.2 Interface"),
version(0.2),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicleQualifier : IDispatch {
[id(DISPID_AAIA_DESCRIPTION), propget,helpstring("Displayed description of the qualifier or group.")]
HRESULT GroupDescription([out, retval] BSTR* sName);
[id(DISPID_AAIA_GROUPNAME), propget,helpstring("Name of the qualifier or group.")]
HRESULT GroupName([out, retval] BSTR* sName);
[id(DISPID_AAIA_GROUPOWNER), propget,helpstring("Owner of the database in which the qualifier or group is defined.")]
HRESULT GroupOwner([out, retval] BSTR* sOwner);
[id(DISPID_AAIA_NUMBER), propget, helpstring("Numeric value of the qualifier.")]
HRESULT Number([out, retval] long* lNumber);
[id(DISPID_AAIA_VALUE), propget, helpstring("Textual value of the qualifier.")]
HRESULT Text([out, retval] BSTR* sText);
};
[
odl,
uuid(DA98DA03-281D-11d4-B124-00500495E912),
helpstring("AAIA IAAIAVehicleQualifierCollection 0.2 Interface"),
version(0.2),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicleQualifierCollection : IDispatch {
[id(1), helpstring("Add a qualifier from the AAIA Vehicle Qualifiers Table using its group and text value.")]
HRESULT AddAAIAQualifierText(
[in] BSTR sGroupName,
[in] BSTR sValue,
[in, defaultvalue(-1)] VARIANT_BOOL bRemoveConflictingQualifiers,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(2), helpstring("Add a qualifier from the AAIA Vehicle Qualifiers Table using its numeric value.")]
HRESULT AddAAIAQualifierNumber(
[in] long lValue,
[in, defaultvalue(-1)] VARIANT_BOOL bRemoveConflictingQualifiers,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(3), helpstring("Add a qualifier obtained from a vehicle Navigator.")]
HRESULT AddQualifier(
[in] IAAIAVehicleQualifier* oQualifierIn,
[in, defaultvalue(-1)] VARIANT_BOOL bRemoveConflictingQualifiers,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(DISPID_AAIA_ADD), helpstring("Add a qualifier specifying its Owner, Description, Name and Text value components.")]
HRESULT Add(
[in] BSTR sGroupName,
[in] BSTR sText,
[in, defaultvalue("")] BSTR sGroupOwner,
[in, defaultvalue("")] BSTR sGroupDescription,
[in, defaultvalue(-1)] VARIANT_BOOL bRemoveConflictingQualifiers,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(DISPID_AAIA_COUNT), propget, helpstring("Returns the number of qualifiers in the collection.")]
HRESULT Count([out, retval] long* lCount);
[id(4), helpstring("Returns the numeric value of a qualifier.")]
HRESULT GetNumber(
[in] VARIANT vIndex,
[out, retval] Long* Number);
[id(6),helpstring("Returns the text value of a qualifier.")]
HRESULT GetText(
[in] VARIANT vIndex,
[out, retval] BSTR* sText);
[id(DISPID_AAIA_ITEM), propget,helpstring("Returns a qualifier.")]
HRESULT Item(
[in] VARIANT vIndex,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(DISPID_AAIA_NEWENUM), propget,helpstring("Returns an enumerator for the collection.")]
HRESULT _NewEnum([out, retval] IUnknown** oEnum);
[id(DISPID_AAIA_REMOVE),helpstring("Removes a qualifier from the collection.")]
HRESULT Remove([in] VARIANT vIndex);
[id(7),helpstring("Removes all qualifiers from the collection.")]
HRESULT RemoveAll();
[id(8),helpstring("Returns all qualifiers with a given Owner from the collection.")]
HRESULT RemoveAllByOwner([in] BSTR sOwner);
[id(9),helpstring("Removes a qualifier from the collection given its GroupName and Owner.")]
HRESULT RemoveByName(
[in] BSTR sName,
[in, defaultvalue("")] BSTR sOwner,
[out, retval] VARIANT_BOOL* bResult);
[id(10),helpstring("Set the numeric value of a qualifier already in the collection.")]
HRESULT SetNumber(
[in] VARIANT vIndex,
[in] Long lNumber);
[id(11),helpstring("Set the text value of a qualifier already in the collection.")]
HRESULT SetText(
[in] VARIANT vIndex,
[in] BSTR sText);
[id(12), propget,helpstring("Returns the string identifying the owner of the shared AAIA Make Model qualifiers.")]
HRESULT SharedMakeModelOwner([out, retval] BSTR* sOwner);
[id(13), propget,helpstring("Returns the string identifying the owner of the shared AAIA Engine qualifiers.")]
HRESULT SharedEngineOwner([out, retval] BSTR* sOwner);
[id(14), propget,helpstring("Returns the string identifying the owner of the shared AAIA Shop Integration qualifiers.")]
HRESULT SharedShopIntegrationOwner([out, retval] BSTR* sOwner);
[id(15), propget,helpstring("Returns the string identifying the owner of the shared AAIA Vehicle Qualifier qualifiers.")]
HRESULT SharedVehicleQualifierOwner([out, retval] BSTR* sOwner);
};
[
odl,
uuid(DA98DA04-281D-11d4-B124-00500495E912),
version(0.2),
helpstring("AAIA IAAIAVehicleQualifierGroups 0.2 Interface"),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicleChoiceGroupCollection : IDispatch {
[id(DISPID_AAIA_ADD),helpstring("Allows a navigator to add a choice group to the collection.")]
HRESULT Add(
[in] BSTR Owner,
[in] BSTR Name,
[in] BSTR Description,
[in] IAAIAVehicleChoiceGroup* Choices,
[in, defaultvalue(0)] long Number,
[out, retval] IAAIAVehicleChoiceGroup** oGroup);
[id(DISPID_AAIA_ITEM), propget,helpstring("Returns a choice group.")]
HRESULT Item(
[in] VARIANT vIndex,
[out, retval] IAAIAVehicleChoiceGroup** oGroup);
[id(DISPID_AAIA_COUNT), propget,,helpstring("Returns the number of choice groups in the collection.")]
HRESULT Count([out, retval] long* lCount);
[id(DISPID_AAIA_NEWENUM), propget,helpstring("Returns the enumerator for the collection.")]
HRESULT _NewEnum([out, retval] IUnknown** oEnum);
[id(DISPID_AAIA_REMOVE),helpstring("Allows a Navigator to remove a choice group from the collection.")]
HRESULT Remove([in] VARIANT vIndex);
};
[
odl,
uuid(DA98DA05-281D-11d4-B124-00500495E912),
helpstring("AAIA IAAIAVehicleChoiceGroup 0.2 Interface"),
version(0.2),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicleChoiceGroup : IDispatch {
[id(DISPID_AAIA_ADD),helpstring("Allows a Navigator to add a qualifier to a choice group.")]
HRESULT Add(
[in ] BSTR Text,
[in, defaultvalue(0)] long Number,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(DISPID_AAIA_DESCRIPTION), propget,helpstring("Returns the description a qualifier's choice group.")]
HRESULT GroupDescription([out, retval] BSTR* sDescription);
[id(DISPID_AAIA_GROUPNAME), propget,helpstring("Returns the name qualifier's choice group.")]
HRESULT GroupName([out, retval] BSTR* sGroupName);
[id(DISPID_AAIA_GROUPOWNER), propget,helpstring("Returns the owner of a qualifier's choice group.")]
HRESULT GroupOwner([out, retval] BSTR* sGroupOwner);
[id(DISPID_AAIA_ITEM), propget,helpstring("Returns a qualifier.")]
HRESULT Item(
[in] VARIANT vIndex,
[out, retval] IAAIAVehicleQualifier** oQualifier);
[id(DISPID_AAIA_COUNT), propget,helpstring("Returns the number of qualifiers in the collection.")]
HRESULT Count([out, retval] long* lCount);
[id(DISPID_AAIA_REMOVE),helpstring("Allows a Navigator to remove a qualifier from the collection.")]
HRESULT Remove([in] VARIANT vIndex);
[id(DISPID_AAIA_NEWENUM), propget,helpstring("Returns the enumerator for the collection.")]
HRESULT _NewEnum([out, retval] IUnknown** oEnum);
};
[
odl,
uuid(DA98DA06-281D-11d4-B124-00500495E912),
helpstring("AAIA Vehicle Navigator 0.2 Interface"),
version(0.2),
// hidden,
dual,
nonextensible,
oleautomation
]
interface IAAIAVehicleNavigator : IDispatch {
[id(1), propget,helpstring("Returns a collection of qualifiers that are implied based on the AAIAid or other qualifiers that are specified.")]
HRESULT ImpliedQualifiers([out, retval] IAAIAVehicleQualifierCollection** oQualifiers);
[id(2),helpstring("Navigates the qualifiers defined by an owner returning unknown qualifiers that may be specified to determine a specific configuration.")]
HRESULT Navigate(
[in, defaultvalue("")] BSTR sNextChoiceGroups,
[in, defaultvalue(-1)] LONG lMaxChoiceGroups,
[out, retval] IAAIAVehicleChoiceGroupCollection** oGroups);
[id(3), propget,helpstring("Returns the group names of the qualifiers that can be navigated using this navigator.")]
HRESULT QualifierGroupNames([out, retval] BSTR* sGroupNames);
[id(4), propget,helpstring("Returns the vehicle being navigated.")]
HRESULT Vehicle([out, retval] IAAIAVehicle** oVehicle);
[id(4), propputref,helpstring("Allows the vehicle object to set the vehicle being navigated.")]
HRESULT Vehicle([in] IAAIAVehicle* oVehicle);
};
};