ExtExtension class (engextcpp.hpp)
The ExtExtension class is the base class for the C++ class that represents the EngExtCpp extension library.
The ExtExtension class includes the following methods, which can be used by the subclass:
- IsUserMode
- IsKernelMode
- IsLiveLocalUser
- IsMachine32
- IsCurMachine32
- IsMachine64
- IsCurMachine64
- Is32On64
- CanQueryVirtual
- HasFullMemBasic
- IsExtensionRemote
- AreOutputCallbacksDmlAware
- RequireUserMode
- RequireKernelMode
- GetRawArgCopy
- Out
- Warn
- Err
- Verb
- Dml
- DmlWarn
- DmlErr
- DmlVerb
- DmlCmdLink
- DmlCmdExec
- RefreshOutputCallbackFlags
- WrapLine
- OutWrapStr
- OutWrapVa
- OutWrap
- DemandWrap
- AllowWrap
- TestWrap
- RequestCircleString
- CopyCircleString
- PrintCircleStringVa
- PrintCircleString
- SetAppendBuffer
- AppendBufferString
- AppendStringVa
- AppendString
- IsAppendStart
- SetCallStatus
- GetCachedSymbolTypeId
- GetCachedFieldOffset
- GetCachedFieldOffset
- AddCachedSymbolInfo
- GetExpr64
- GetExprU64
- GetExprS64
- ThrowCommandHelp
- ThrowInterrupt
- ThrowOutOfMemory
- ThrowContinueSearch
- ThrowReloadExtension
- ThrowInvalidArg
- ThrowRemote
- ThrowStatus
- ThrowLastError
class ExtExtension
{
public:
USHORT m_ExtMajorVersion;
USHORT m_ExtMinorVersion;
ULONG m_ExtInitFlags;
ExtKnownStruct * m_KnownStructs;
ExtProvidedValue * m_ProvidedValues;
ExtCheckedPointer<IDebugAdvanced> m_Advanced;
ExtCheckedPointer<IDebugClient> m_Client;
ExtCheckedPointer<IDebugControl> m_Control;
ExtCheckedPointer<IDebugDataSpaces> m_Data;
ExtCheckedPointer<IDebugRegisters> m_Registers;
ExtCheckedPointer<IDebugSymbols> m_Symbols;
ExtCheckedPointer<IDebugSystemObjects> m_System;
ExtCheckedPointer<IDebugAdvanced2> m_Advanced2;
ExtCheckedPointer<IDebugAdvanced3> m_Advanced3;
ExtCheckedPointer<IDebugClient2> m_Client2;
ExtCheckedPointer<IDebugClient3> m_Client3;
ExtCheckedPointer<IDebugClient4> m_Client4;
ExtCheckedPointer<IDebugClient5> m_Client5;
ExtCheckedPointer<IDebugControl2> m_Control2;
ExtCheckedPointer<IDebugControl3> m_Control3;
ExtCheckedPointer<IDebugControl4> m_Control4;
ExtCheckedPointer<IDebugDataSpaces2> m_Data2;
ExtCheckedPointer<IDebugDataSpaces3> m_Data3;
ExtCheckedPointer<IDebugDataSpaces4> m_Data4;
ExtCheckedPointer<IDebugRegisters2> m_Registers2;
ExtCheckedPointer<IDebugSymbols2> m_Symbols2;
ExtCheckedPointer<IDebugSymbols3> m_Symbols3;
ExtCheckedPointer<IDebugSystemObjects2> m_System2;
ExtCheckedPointer<IDebugSystemObjects3> m_System3;
ExtCheckedPointer<IDebugSystemObjects4> m_System4;
ULONG m_OutputWidth;
ULONG m_ActualMachine;
ULONG m_Machine;
ULONG m_PageSize;
ULONG m_PtrSize;
ULONG m_NumProcessors;
ULONG64 m_OffsetMask;
ULONG m_DebuggeeClass;
ULONG m_DebuggeeQual;
ULONG m_DumpFormatFlags;
bool m_IsRemote;
bool m_OutCallbacksDmlAware;
ULONG m_OutMask;
ULONG m_CurChar;
ULONG m_LeftIndent;
bool m_AllowWrap;
bool m_TestWrap;
ULONG m_TestWrapChars;
PSTR m_AppendBuffer;
ULONG m_AppendBufferChars;
PSTR m_AppendAt;
};
Methods
The ExtExtension class has these methods.
ExtExtension::GetArgStr The GetArgStr method returns a named string argument from the command line used to invoke the current extension command. |
ExtExtension::GetArgU64 The GetArgU64 method returns the value of a named expression argument from the command line used to invoke the current extension command. |
ExtExtension::GetNumUnnamedArgs The GetNumUnnamedArgs method returns the number of unnamed arguments in the command line used to invoke the current extension command. |
ExtExtension::GetRawArgStr The GetRawArgStr method returns a string that represents the arguments passed to the extension command. |
ExtExtension::GetUnnamedArgStr The GetUnnamedArgStr method returns an unnamed string argument from the command line used to invoke the current extension command. |
ExtExtension::GetUnnamedArgU64 The GetUnnamedArgU64 method returns the value of an unnamed expression argument from the command line used to invoke the current extension command. |
ExtExtension::HasArg The HasArg method indicates whether a specified named argument is present in the command line used to invoke the current extension command. |
ExtExtension::HasCharArg The HasCharArg method indicates whether a specified single-character named argument is present in the command line used to invoke the current extension command. |
ExtExtension::HasUnnamedArg The HasUnnamedArg method indicates whether a specified unnamed argument is present in the command line used to invoke the current extension command. |
ExtExtension::Initialize The Initialize method is called by the engine to initialize an EngExtCpp extension library after loading it. |
ExtExtension::OnSessionAccessible The OnSessionAccessible method is called by the engine to inform the EngExtCpp extension library when the debugging session becomes accessible. |
ExtExtension::OnSessionActive The OnSessionActive method is called by the engine to inform the EngExtCpp extension library when the debugging session becomes active. |
ExtExtension::OnSessionInaccessible The OnSessionInaccessible method is called by the engine to inform the EngExtCpp extension library when the debugging session becomes inaccessible. |
ExtExtension::OnSessionInactive The OnSessionInactive method is called by the engine to inform the EngExtCpp extension library when the debugging session becomes inactive. |
ExtExtension::SetArg The SetArg method sets a named argument for the current extension command. |
ExtExtension::SetArgStr The SetArgStr method sets a named string argument for the current expression command. |
ExtExtension::SetArgU64 The SetArgU64 method sets a named expression argument for the current expression command. |
ExtExtension::SetUnnamedArg The SetUnnamedArg method sets an unnamed argument for the current extension command. |
ExtExtension::SetUnnamedArgStr The SetUnnamedArgStr method sets an unnamed string argument for the current extension command. |
ExtExtension::SetUnnamedArgU64 The SetUnnamedArgU64 method sets the value of an unnamed expression argument for the current extension command. |
ExtExtension::Uninitialize The Uninitialize method is called by the engine to uninitialize an EngExtCpp extension library before it is unloaded. |
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | engextcpp.hpp |