sdaiGetInstanceAttrBN

This function is a specific version of sdaiGetAttrBN(..), where the valueType is sdaiINSTANCE. This call can be useful in case of specific programming languages that cannot map towards sdaiGetAttrBN(..) directly, this function is useless for languages as C, C++, C#, JAVA, VB.NET, Delphi and similar as they are able to map sdaiGetAttrBN(..) directly. Technically sdaiGetInstanceAttrBN will transform into the following call

    SdaiInstance    inst = 0;
    sdaiGetAttr(
            instance,
            sdaiGetAttrDefinition(
                    sdaiGetInstanceType(
                            instance
                        ),
                    attributeName
                ),
            sdaiINSTANCE,
            &inst
        );
    return  inst;

Syntax

//
//   Strong typing definition
//
SdaiInstance    sdaiGetInstanceAttrBN(
                        SdaiInstance            instance,
                        SdaiString              attributeName
                    );

static  inline  SdaiInstance    sdaiGetInstanceAttrBN(
                                        SdaiInstance            instance,
                                        char                    * attributeName
                                    )
{
    return  sdaiGetInstanceAttrBN(
                    instance,
                    (SdaiString) attributeName
                );
}


//
//   Weak typing definition
//
int_t   __declspec(dllexport) __stdcall sdaiGetInstanceAttrBN(
                                                int_t                   instance,
                                                const char              * attributeName
                                            );

static  inline  int_t   sdaiGetInstanceAttrBN(
                                int_t                   instance,
                                char                    * attributeName
                            )
{
    return  sdaiGetInstanceAttrBN(
                    instance,
                    (const SdaiString) attributeName
                );
}
    

Property instance

Size: 32 bit / 4 byte (value)
...

Property attributeName

Size: 32 bit / 4 byte (reference)
...