IDiaSymbol::get_numericProperties
Recupera el conjunto de propiedades numéricas para este símbolo.
Sintaxis
HRESULT get_numericProperties(
DWORD cnt,
DWORD *pcnt,
DWORD *pProperties
);
Parámetros
cnt
[in] Número de DWORD a los que apunta el búfer pProperties
.
pcnt
[out] Devuelve el número de propiedades válidas establecidas en pProperties
.
pProperties
[out] Devuelve el conjunto de propiedades de este símbolo.
Valor devuelto
Si la operación se realiza correctamente, devuelve S_OK
; de lo contrario, devuelve S_FALSE
o un código de error.
Nota:
Un valor devuelto de S_FALSE
significa que la propiedad no está disponible para el símbolo.
Ejemplo
CComPtr<pSymbol> pSymbol;
BOOL f = FALSE;
HRESULT hr = E_FAIL;
...
hr = pSymbol->get_isHLSLData(&f);
if (FAILED(hr)) {
return hr;
}
if (f) {
DWORD value = 0;
hr = pSymbol->get_numberOfRegisterIndices(&value);
if (hr == S_OK && value > 0) {
DWORD *pOff = new (std::nothrow) DWORD[value];
if (pOff == NULL) {
return E_OUTOFMEMORY;
}
DWORD propertiesRead;
if (IfOkOrReportAuto(pSymbol->get_numericProperties(value, &propertiesRead, pOff))) {
value = __min(value, propertiesRead);
for (DWORD i = 0; i < value; i++) {
printf("%u\n", pOff[i]);
}
}
delete[] pOff;
}
}