Метод IIterableConcept::GetDefaultIndexDimensionality (dbgmodel.h)

Метод GetDefaultIndexDimensionality возвращает число измерений для индекса по умолчанию. Если объект не индексируется, этот метод должен возвращать значение 0 и успешно (S_OK). Любой объект, возвращающий ненулевое значение из этого метода, объявляет поддержку контракта протокола, в котором указано:

  • Объект поддерживает индексируемую концепцию через поддержку IIndexableConcept.
  • Метод GetNext объекта IModelIterator , возвращенный методом GetIterator итерируемой концепции, возвращает уникальный индекс по умолчанию для каждого создаваемого элемента. Такой индекс будет иметь количество измерений, как указано здесь.
  • Передача индексов, возвращенных методом GetNext IModelIterator , методу GetAt по индексируемой концепции (IIndexableConcept), будет ссылаться на тот же объект, который был создан GetNext. Возвращается то же значение.

Синтаксис

HRESULT GetDefaultIndexDimensionality(
  IModelObject *contextObject,
  ULONG64      *dimensionality
);

Параметры

contextObject

Запрашиваемый экземпляр (этот указатель).

dimensionality

Здесь возвращается число измерений индексатора по умолчанию. Возвращаемое нулевое значение указывает, что объект не индексируется.

Возвращаемое значение

Этот метод возвращает HRESULT, который указывает на успех или сбой.

Комментарии

Пример реализации:

IFACEMETHOD(GetDefaultIndexDimensionality)(_In_ IModelObject * /*pContextObject*/,
                                           _Out_ ULONG64 *pDimensionality)
{
    // If the object is not indexable, pDimensionality should be 0 and the 
    // method should return S_OK.  Here, the object is indexable in one dimension.
    // Providing this information requires that our iterator return these 
    // 1D indexes and that we have an indexer which accepts them.
    *pDimensionality = 1;
    return S_OK;
}

Требования

Требование Значение
Заголовок dbgmodel.h

См. также раздел

Интерфейс IIterableConcept