edmiGetHashedAttrInstances


 

EdmiError  edmiGetHashedAttrInstances  (SdaiModel      modelId,
                                         SdaiAttr      attrId,                                         
                                         SdaiString    attrStringValue,
                                         SdaiInteger   attrIntegerValue,
                                         SdaiInteger   maxBufferSize,
                                         SdaiInteger   *index,
                                         SdaiInteger   *numberOfHits,
                                         SdaiInstance  *resultBuffer);

Search the specified model for the instances with an attribute value equal to the specified attribute. Number of instances found is returned via the argument <numberOfHits>. If no attribute hash table is defined for the specified attribute, no sequential search is performed and the function returns an error code.

Arguments


TypeNameComment
SdaiModel

modelId

A numeric modelID that uniquely identifies the model of interest in the EDMdatabase. The modelID is returned from the functions: sdaiCreateModel , sdaiCreateModelBN , sdaiOpenModelBN , edmiGetModel , edmiGetModelBN , sdaiGetInstanceModel

SdaiAttr

attrId

A numeric attributeID that uniquely identifies an attribute definition instance in the EDMdatabase. The attributeID is returned from the sdaiGetAttrDefinition and sdaiGetAttrDefinitionBN functions.

SdaiString

attrStringValue

is used to specify the hash table key for hash tables of SdaiString data type.

SdaiInteger

attrIntegerValue

is used to specify the hash table key for hash tables of  SdaiInstance, and EdmPackedDate data types.

SdaiInteger

maxBufferSize

Specifies the size (in number of bytes) of the buffer used for receiving matching elements. The number of elements may never exceed the number that fits into a buffer with the size specified in this argument.

SdaiInteger

*index

  • In: The index of the aggregate element to start reading from. The index of the first element in the actual aggregate will always be indexed zero, regardless of the aggregate type. Hence the legal index range is: 0<= index < number of elements in the aggregate.
  • Out: The index of the "last returned matching element". This argument enables the caller to search for elements in an incremental way by specifying this returned "index value plus one" as the input to the next edmiGetHashedAttrInstances function and so on.
SdaiInteger

*numberOfHits

  • In: Specifies the maximum number of matching instances to return. If this number is greater than the limitation specified by the <maxBufferSize> argument, then the maximum number of hits will be calculated from the <maxBufferSize> argument.
  • Out: The number of found matching instances.
SdaiInstance

*resultBuffer

Address of a buffer in the calling application that will receive the instanceID of each returned matching instance. This buffer is mapped to a SdaiInstance array when the instanceID of each returned matching instance is stored. The <maxBufferSize> argument should prevent the function to write past buffer.

Return Value


Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_r_EDMInterface'.

Options


 

Example


 

 <example>

 

See also

Filter by label

There are no items with the selected labels at this time.

Â