Class CInterfaceEntity#
Defined in File interface_entity.h
Inheritance Relationships#
Base Types#
public CDefinitionEntity
(Class CDefinitionEntity)public sdv::idl::IInterfaceEntity
(Struct IInterfaceEntity)
Class Documentation#
-
class CInterfaceEntity : public CDefinitionEntity, public sdv::idl::IInterfaceEntity#
The interface definition of an IDL file.
The interface section of the IDL file contains multiple declarations of attributes and operations, as well as the definitions of enums, structs and unions.
Public Functions
-
CInterfaceEntity(const CContextPtr &rptrContext, CEntityPtr ptrParent, bool bIsLocal)#
Default constructor.
- Parameters:
rptrContext – [in] Reference to the smart pointer holding the parse context. Must not be NULL.
ptrParent – [in] Pointer to the parent class holding this entity. This must not be NULL.
bIsLocal – [in] When set, the interface is defined as a local interface not intended to be marshalled.
-
virtual ~CInterfaceEntity() override = default#
Destructor.
-
virtual sdv::interface_t GetInterface(sdv::interface_id idInterface) override#
Get access to another interface. Overload of sdv::IInterfaceAccess::GetInterface.
- Parameters:
idInterface – [in] The interface id to get access to.
- Returns:
Returns a pointer to the interface or NULL when the interface is not supported.
-
inline virtual bool IsLocal() const override#
Is this interface local? Overload of sdv::idl::IInterfaceEntity::IsLocal.
- Returns:
Returns whether the interface is defined as local.
-
inline virtual sdv::idl::EEntityType GetType() const override#
Get the type of the entity. Overload of CEntity::GetType.
- Returns:
Returns the interface entity type.
-
virtual std::string GetDeclTypeStr(bool bResolveTypedef) const override#
Get the declaration type of the entity as string. Overload of CEntity::GetDeclTypeStr.
- Parameters:
bResolveTypedef – [in] When set, resolve the typedef type into the base type.
- Returns:
Returns a string with interface type.
-
virtual void Process() override#
Process the code. Overload of CEntity::Process.
-
virtual void CreateValueNode() override#
Create the content value node. Overload of CDefinitionEntity::CreateValueNode.
Create the value node and assign the value node to the ValueRef() reference..
-
virtual bool Supports(EDefinitionSupport eSupport) const override#
Request whether the definition supports the content. Overload of CDefintionEntity::Supports.
- Parameters:
eSupport – [in] The type of support that is requested.
- Returns:
Returns ‘true’ when the definition supports the content; ‘false’ otherwise.
-
inline virtual bool SupportsInheritance() const override#
Does the entity support inheritance? Overload of CDefinitionEntity::SupportsInheritance.
Returns whether the entity supports inheritance.
- Returns:
Returns whether inheritance is supported (which is the case).
-
inline virtual bool SupportContentAttributes() const override#
Does the complex entity support attributes in its content? Overload of CDefinitionEntity::SupportContentAttributes.
The default implementation doesn’t support attributes (they are specific to interfaces).
- Returns:
Returns whether the entity supports attributes (which is the case).
-
inline virtual bool SupportContentOperations() const override#
Does the complex entity support operations in its content? Overload of CDefinitionEntity::SupportContentOperations.
The default implementation doesn’t support operations (they are specific to interfaces).
- Returns:
Returns whether the entity supports operations (which is the case).
-
CInterfaceEntity(const CContextPtr &rptrContext, CEntityPtr ptrParent, bool bIsLocal)#