Можно настроить идентификацию экземпляра службы для требуемых и предоставленных портов в адаптивном компоненте AUTOSAR. При построении адаптивной модели компонентов программного обеспечения:
Экспортированные файлы ARXML содержат файл манифеста экземпляра службы, описывающий сопоставление экземпляра «порт-служба».
Созданный код C++ использует сконфигурированные сведения об экземпляре службы в ara::com вызовы функций.
Для настройки идентификации экземпляра службы:
Откройте словарь AUTOSAR и выберите Параметры XML. Задайте параметр XML Идентификация экземпляра службы с помощью, чтобы указать форму, в которой нужно создать сведения об экземпляре службы. Выбрать InstanceIdentifier или InstanceSpecifier. Выбранная форма используется для идентификации экземпляров службы в созданных функциях прокси и скелета.
Перейдите к требуемым портам и предоставленным ракурсам портов в словаре. Выберите каждый из перечисленных портов для отображения атрибутов манифеста. Для каждого порта на основе формы экземпляра службы, выбранной в параметрах XML, проверьте значение для параметра «Спецификатор экземпляра» или «Идентификатор экземпляра». Можно ввести значение или принять существующее значение.

При построении модели создается файл манифеста экземпляра службы . Файл манифеста описывает развертывание интерфейса службы, сопоставление экземпляра службы с портом и интерфейсы службы для адаптивного компонента.model_ServiceInstanceManifest.arxml
В сгенерированном коде C++ ara::com вызовы функций используют сконфигурированную информацию об экземпляре услуги. Например, если выбран InstanceIdentifier форма и установите для идентификатора экземпляра значение 1 для требуемого порта, сгенерированные вызовы функции используют эту конфигурацию.
// Model initialize function
void autosar_LaneGuidanceModelClass::initialize()
{
{
ara::com::ServiceHandleContainer< company::chassis::required::proxy::
RequiredInterfaceProxy::HandleType > handles;
handles = company::chassis::required::proxy::RequiredInterfaceProxy::
FindService(ara::com::InstanceIdentifier("1"));
...