utility: Added Tracer for collecting time measurements
* define TRACING_ENABLED in utility/tracing.h to enable tracing
* invoke TraceEvent by writing TRACE() at start of function or scope
* provide an event name with TRACE("name")
* press SPACE to show collected traces history and report with accumulated times
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "utility/messaging/type/MessageStatus.h"
|
||||
#include "utility/text/TextAccess.h"
|
||||
#include "utility/tracing.h"
|
||||
#include "utility/utility.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
@@ -28,6 +29,8 @@ const uint CodeController::s_lineRadius = 2;
|
||||
|
||||
void CodeController::handleMessage(MessageActivateAll* message)
|
||||
{
|
||||
TRACE("code all");
|
||||
|
||||
std::vector<ErrorInfo> errors;
|
||||
m_collection = m_storageAccess->getErrorTokenLocations(&errors);
|
||||
std::vector<CodeSnippetParams> snippets = getSnippetsForCollection(m_collection);
|
||||
@@ -95,6 +98,8 @@ void CodeController::handleMessage(MessageActivateLocalSymbols* message)
|
||||
|
||||
void CodeController::handleMessage(MessageActivateTokens* message)
|
||||
{
|
||||
TRACE("code activate");
|
||||
|
||||
CodeView* view = getView();
|
||||
|
||||
if (!message->keepContent())
|
||||
@@ -150,6 +155,8 @@ void CodeController::handleMessage(MessageActivateTokens* message)
|
||||
|
||||
void CodeController::handleMessage(MessageChangeFileView* message)
|
||||
{
|
||||
TRACE("code change file");
|
||||
|
||||
CodeView* view = getView();
|
||||
|
||||
switch (message->state)
|
||||
@@ -237,6 +244,8 @@ void CodeController::handleMessage(MessageScrollCode* message)
|
||||
|
||||
void CodeController::handleMessage(MessageShowErrors* message)
|
||||
{
|
||||
TRACE("code errors");
|
||||
|
||||
std::vector<ErrorInfo> errors;
|
||||
m_collection = m_storageAccess->getErrorTokenLocations(&errors);
|
||||
std::vector<CodeSnippetParams> snippets = getSnippetsForCollection(m_collection);
|
||||
@@ -251,6 +260,8 @@ void CodeController::handleMessage(MessageShowErrors* message)
|
||||
|
||||
void CodeController::handleMessage(MessageSearchFullText* message)
|
||||
{
|
||||
TRACE("code fulltext");
|
||||
|
||||
CodeView* view = getView();
|
||||
view->clear();
|
||||
|
||||
@@ -262,6 +273,8 @@ void CodeController::handleMessage(MessageSearchFullText* message)
|
||||
|
||||
void CodeController::handleMessage(MessageShowScope* message)
|
||||
{
|
||||
TRACE("code scope");
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> collection =
|
||||
m_storageAccess->getTokenLocationsForLocationIds(std::vector<Id>(1, message->scopeLocationId));
|
||||
|
||||
@@ -328,6 +341,8 @@ void CodeController::showContents(MessageBase* message)
|
||||
std::vector<CodeSnippetParams> CodeController::getSnippetsForActiveTokenLocations(
|
||||
const TokenLocationCollection* collection, Id declarationId
|
||||
) const {
|
||||
TRACE();
|
||||
|
||||
std::vector<CodeSnippetParams> snippets;
|
||||
size_t definitionFileCount = 0;
|
||||
size_t declarationFileCount = 0;
|
||||
@@ -429,6 +444,8 @@ std::vector<CodeSnippetParams> CodeController::getSnippetsForFile(
|
||||
std::shared_ptr<TokenLocationFile> activeTokenLocations, bool addTokenLocations
|
||||
) const
|
||||
{
|
||||
TRACE();
|
||||
|
||||
std::shared_ptr<TextAccess> textAccess = m_storageAccess->getFileContent(activeTokenLocations->getFilePath());
|
||||
std::shared_ptr<TokenLocationFile> scopeLocations
|
||||
= std::make_shared<TokenLocationFile>(activeTokenLocations->getFilePath().str());
|
||||
@@ -713,6 +730,8 @@ std::vector<std::string> CodeController::getProjectDescription(TokenLocationFile
|
||||
|
||||
void CodeController::addModificationTimes(std::vector<CodeSnippetParams>& snippets) const
|
||||
{
|
||||
TRACE();
|
||||
|
||||
std::vector<FilePath> filePaths;
|
||||
for (const CodeSnippetParams& snippet : snippets)
|
||||
{
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include <set>
|
||||
|
||||
#include "utility/logging/logging.h"
|
||||
#include "utility/tracing.h"
|
||||
#include "utility/utility.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
@@ -23,6 +24,8 @@ GraphController::~GraphController()
|
||||
|
||||
void GraphController::handleMessage(MessageActivateAll* message)
|
||||
{
|
||||
TRACE("graph all");
|
||||
|
||||
m_activeNodeIds.clear();
|
||||
m_activeEdgeIds.clear();
|
||||
|
||||
@@ -38,6 +41,8 @@ void GraphController::handleMessage(MessageActivateAll* message)
|
||||
|
||||
void GraphController::handleMessage(MessageActivateTokens* message)
|
||||
{
|
||||
TRACE("graph activate");
|
||||
|
||||
if (message->isEdge || message->keepContent())
|
||||
{
|
||||
m_activeEdgeIds = message->tokenIds;
|
||||
@@ -192,6 +197,8 @@ void GraphController::clear()
|
||||
|
||||
void GraphController::createDummyGraphForTokenIds(const std::vector<Id>& tokenIds, const std::shared_ptr<Graph> graph)
|
||||
{
|
||||
TRACE();
|
||||
|
||||
GraphView* view = getView();
|
||||
if (!view)
|
||||
{
|
||||
@@ -361,6 +368,8 @@ void GraphController::autoExpandActiveNode(const std::vector<Id>& activeTokenIds
|
||||
|
||||
bool GraphController::setActive(const std::vector<Id>& activeTokenIds)
|
||||
{
|
||||
TRACE();
|
||||
|
||||
bool noActive = activeTokenIds.size() == 0;
|
||||
if (activeTokenIds.size() > 0)
|
||||
{
|
||||
@@ -401,6 +410,8 @@ bool GraphController::setActive(const std::vector<Id>& activeTokenIds)
|
||||
|
||||
void GraphController::setVisibility(bool noActive)
|
||||
{
|
||||
TRACE();
|
||||
|
||||
for (std::shared_ptr<DummyNode> node : m_dummyNodes)
|
||||
{
|
||||
removeImplicitChildrenRecursive(node.get());
|
||||
@@ -411,6 +422,8 @@ void GraphController::setVisibility(bool noActive)
|
||||
|
||||
void GraphController::setActiveAndVisibility(const std::vector<Id>& activeTokenIds)
|
||||
{
|
||||
TRACE();
|
||||
|
||||
setVisibility(setActive(activeTokenIds));
|
||||
}
|
||||
|
||||
@@ -519,6 +532,8 @@ void GraphController::setNodeVisibilityRecursiveTopDown(DummyNode* node, bool pa
|
||||
|
||||
void GraphController::bundleNodes()
|
||||
{
|
||||
TRACE();
|
||||
|
||||
// evaluate top level nodes
|
||||
for (std::shared_ptr<DummyNode> node : m_dummyNodes)
|
||||
{
|
||||
@@ -817,6 +832,8 @@ void GraphController::bundleNodesMatching(
|
||||
|
||||
void GraphController::bundleNodesByType()
|
||||
{
|
||||
TRACE();
|
||||
|
||||
std::vector<std::shared_ptr<DummyNode>> oldNodes = m_dummyNodes;
|
||||
m_dummyNodes.clear();
|
||||
|
||||
@@ -864,6 +881,8 @@ void GraphController::bundleNodesByType()
|
||||
|
||||
void GraphController::layoutNesting()
|
||||
{
|
||||
TRACE();
|
||||
|
||||
for (std::shared_ptr<DummyNode> node : m_dummyNodes)
|
||||
{
|
||||
layoutNestingRecursive(node.get());
|
||||
@@ -1096,6 +1115,8 @@ void GraphController::layoutToGrid(DummyNode* node) const
|
||||
|
||||
void GraphController::layoutGraph(bool sort)
|
||||
{
|
||||
TRACE();
|
||||
|
||||
BucketGrid grid(getView()->getViewSize());
|
||||
grid.createBuckets(m_dummyNodes, m_dummyEdges);
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "component/view/SearchView.h"
|
||||
#include "data/access/StorageAccess.h"
|
||||
#include "utility/tracing.h"
|
||||
|
||||
SearchController::SearchController(StorageAccess* storageAccess)
|
||||
: m_storageAccess(storageAccess)
|
||||
@@ -59,6 +60,8 @@ void SearchController::handleMessage(MessageFind* message)
|
||||
|
||||
void SearchController::handleMessage(MessageSearchAutocomplete* message)
|
||||
{
|
||||
TRACE("search autocomplete");
|
||||
|
||||
LOG_INFO("autocomplete string: \"" + message->query + "\"");
|
||||
getView()->setAutocompletionList(m_storageAccess->getAutocompletionMatches(message->query));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user