Data (Debug Interface Access SDK)
All variables, such as parameters, local variables, global variables, and class members, are identified by SymTagData
symbols. Constant values (LocIsConstant
) are also identified with this type.
Properties
The following table shows the properties that are valid for this symbol type.
Property | Data type | Description |
---|---|---|
IDiaSymbol::get_access | DWORD |
If a field, then one of the values of the CV_access_e Enumeration. |
IDiaSymbol::get_addressOffset | DWORD |
Offset part of location; for details, see the LocationType Enumeration. |
IDiaSymbol::get_addressSection | DWORD |
Section part of location; for details, see the LocationType Enumeration. |
IDiaSymbol::get_addressTaken | BOOL |
TRUE if this data's address is referenced by another symbol. |
IDiaSymbol::get_bitPosition | DWORD |
Bit position of location; for details, see the LocationType Enumeration (not supported in Debug Interface Access (DIA) SDK v8.0). |
IDiaSymbol::get_classParent | IDiaSymbol* |
Symbol for the class, if this is a structure, union, or class field. |
IDiaSymbol::get_classParentId | DWORD |
ID of the class parent symbol. |
IDiaSymbol::get_compilerGenerated | BOOL |
TRUE if the data was generated by the compiler. |
IDiaSymbol::get_constType | BOOL |
TRUE if the data is marked as being constant. |
IDiaSymbol::get_dataKind | DWORD |
One of the DataKind Enumeration values. |
IDiaSymbol::get_isAggregated | BOOL |
TRUE if the data is part of an aggregated data type (only in DIA SDK v8.0 and later). |
IDiaSymbol::get_isSplitted | BOOL |
TRUE if data is has been split into an aggregate of multiple symbols (only in DIA SDK v8.0 and later). |
IDiaSymbol::get_length | ULONGLONG |
Length of bitfield; for details, see the LocationType Enumeration. |
IDiaSymbol::get_lexicalParent | IDiaSymbol* |
Symbol for the enclosing compiland, function, or block. |
IDiaSymbol::get_lexicalParentId | DWORD |
ID of the lexical parent symbol. |
IDiaSymbol::get_locationType | DWORD |
Any of the allowable location types; for details, see Symbol Locations |
IDiaSymbol::get_name | BSTR |
Name of the variable. |
IDiaSymbol::get_offset | LONG |
Offset from register contents; for details, see the LocationType Enumeration. |
IDiaSymbol::get_registerId | DWORD |
Register designator of location; for details, see the LocationType Enumeration. |
IDiaSymbol::get_relativeVirtualAddress | DWORD |
Relative position of the data within its block. |
IDiaSymbol::get_slot | DWORD |
Gets slot number of the data. |
IDiaSymbol::get_symIndexId | DWORD |
Index ID of symbol. |
IDiaSymbol::get_symTag | DWORD |
Returns SymTagData (one of the SymTagEnum Enumeration values). |
IDiaSymbol::get_token | DWORD |
The metadata token representing the data. |
IDiaSymbol::get_type | IDiaSymbol* |
Symbol for the variable type. |
IDiaSymbol::get_typeId | DWORD |
ID of the variable type symbol. |
IDiaSymbol::get_unalignedType | BOOL |
TRUE if the data is unaligned. |
IDiaSymbol::get_value | VARIANT |
The value of constant data. |
IDiaSymbol::get_virtualAddress | ULONGLONG |
Position of the data within the executable. |
IDiaSymbol::get_volatileType | BOOL |
TRUE if the data is marked as volatile. |