IDomainSystem::RepresentAs: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
(Исправление для нулевого кода return_code_t и включение PLATFORM_NATIVE_CALLING_CONVENTION в интерфейсы.)
 
Строка 1: Строка 1:
{{function_begin | return_code_t RepresentAs(DomainSystemTypeId type_id, void** ppInterface) noexcept; |{{IDomainSystem::RepresentAs brief}}}}
{{function_begin | return_code_t PLATFORM_NATIVE_CALLING_CONVENTION RepresentAs(DomainSystemTypeId type_id, void** ppInterface) noexcept; |{{IDomainSystem::RepresentAs brief}}}}
{{function_paramlist begin}}
{{function_paramlist begin}}
{{function_paramlist add|type_id|32-х битовое целое, принимающее одно из следующих значений идентификаторов интерфейсов. {{DomainSystemTypeId}}}}
{{function_paramlist add|type_id|32-х битовое целое, принимающее одно из следующих значений идентификаторов интерфейсов. {{DomainSystemTypeId}}}}

Текущая версия на 00:53, 18 декабря 2017

 return_code_t PLATFORM_NATIVE_CALLING_CONVENTION RepresentAs(DomainSystemTypeId type_id, void** ppInterface) noexcept;

Осуществляет преобразование в интерфейс, заданный идентификатором.

Параметры
type_id32-х битовое целое, принимающее одно из следующих значений идентификаторов интерфейсов.
Символическое имяЦелочисленное значениеОписание
DomainSystemType0Идентификатор интерфейса IDomainSystem.
TCPDomainSystemType1Идентификатор интерфейса ITCPDomainSystem.
TCPDomainSystemCustomRequestHandlerType2Идентификатор интерфейса ITCPDomainSystemCustomRequestHandler.
[out]ppInterfaceВыходной указатель, принимающий интерфейс заданного типа или 0 в случае ошибки.
Возвращаемое значение:
32-битовый целый код ошибки, который в случае успешного выполнения неотрицателен (старший бит сброшен). В случае, если интерфейс, заданный идентификатором, не поддерживается, возвращается код CHSVERROR_INVALID_PARAMETER.

В случае успешного завершения функции, полученный через параметр ppInterface объект необходимо закрывать вызовом его метода Release отдельно и независимо от объекта, над которым применен метод RepresentAs.

Для проверки доступности того или иного интерфейса предпочтительно использовать метод IDomainSystem::IsInterfaceAvailable.