Files
UnrealEngineUWP/Engine/Source/Developer/Windows/LiveCodingServer/Private/External/LC_VisualStudioAutomation.h
ben marsh 940f5a5f73 LiveCoding: Create a new external module that includes the appropriate headers for Visual Studio automation support (VisualStudioDTE), allowing the UE-friendly version to be used by the VS source code accessor as well as Live Coding.
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 7321384 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7321387 by ben marsh in Main branch]
2019-07-16 08:45:13 -04:00

48 lines
1.7 KiB
C++

// Copyright 2011-2019 Molecular Matters GmbH, all rights reserved.
#pragma once
#include "LC_Types.h"
#include "VisualStudioDTE.h"
#if WITH_VISUALSTUDIO_DTE
namespace visualStudio
{
void Startup(void);
void Shutdown(void);
// Finds a Visual Studio debugger instance currently attached to the process with the given ID
EnvDTE::DebuggerPtr FindDebuggerAttachedToProcess(unsigned int processId);
// Finds a Visual Studio debugger instance currently debugging the process with the given ID
EnvDTE::DebuggerPtr FindDebuggerForProcess(unsigned int processId);
// Attaches a Visual Studio debugger instance to the process with the given ID
bool AttachToProcess(const EnvDTE::DebuggerPtr& debugger, unsigned int processId);
// Enumerates all threads of a debugger instance
types::vector<EnvDTE::ThreadPtr> EnumerateThreads(const EnvDTE::DebuggerPtr& debugger);
// Freezes all given threads
bool FreezeThreads(const EnvDTE::DebuggerPtr& debugger, const types::vector<EnvDTE::ThreadPtr>& threads);
// Freezes a single thread with the given thread ID
bool FreezeThread(const EnvDTE::DebuggerPtr& debugger, const types::vector<EnvDTE::ThreadPtr>& threads, unsigned int threadId);
// Thaws all given threads
bool ThawThreads(const EnvDTE::DebuggerPtr& debugger, const types::vector<EnvDTE::ThreadPtr>& threads);
// Thaws a single thread with the given thread ID
bool ThawThread(const EnvDTE::DebuggerPtr& debugger, const types::vector<EnvDTE::ThreadPtr>& threads, unsigned int threadId);
// Resumes the process in the debugger
bool Resume(const EnvDTE::DebuggerPtr& debugger);
// Breaks the process in the debugger
bool Break(const EnvDTE::DebuggerPtr& debugger);
}
#endif