24#ifndef PXR_USD_USD_UTILS_COALESCING_DIAGNOSTIC_DELEGATE_H
25#define PXR_USD_USD_UTILS_COALESCING_DIAGNOSTIC_DELEGATE_H
36#include "pxr/usd/usdUtils/api.h"
44#include <tbb/concurrent_queue.h>
46PXR_NAMESPACE_OPEN_SCOPE
52 size_t sourceLineNumber;
53 std::string sourceFunction;
54 std::string sourceFileName;
59 TfCallContext context;
60 std::string commentary;
68 std::vector<UsdUtilsCoalescingDiagnosticDelegateUnsharedItem> unsharedItems;
74typedef std::vector<UsdUtilsCoalescingDiagnosticDelegateItem>
130 tbb::concurrent_queue<TfDiagnosticBase*> _diagnostics;
133PXR_NAMESPACE_CLOSE_SCOPE
One may set a delegate with the TfDiagnosticMgr which will be called to respond to errors and diagnos...
Represents an object that contains error information.
Represents an object that contains information about a status message.
Represents an object that contains information about a warning.
A class which collects warnings and statuses from the Tf diagnostic manager system in a thread safe m...
virtual USDUTILS_API void IssueStatus(const TfStatus &) override
Called when a TF_STATUS() is issued.
USDUTILS_API void DumpUncoalescedDiagnostics(std::ostream &ostr)
Print all pending diagnostics without any coalescing to ostr.
USDUTILS_API std::vector< std::unique_ptr< TfDiagnosticBase > > TakeUncoalescedDiagnostics()
Get all pending diagnostics without any coalescing.
virtual USDUTILS_API void IssueWarning(const TfWarning &) override
Called when a TF_WARNING() is issued.
virtual USDUTILS_API void IssueFatalError(const TfCallContext &, const std::string &) override
Called when a TF_FATAL_ERROR is issued (or a failed TF_AXIOM).
virtual USDUTILS_API void IssueError(const TfError &) override
Methods that implement the interface provided in TfDiagnosticMgr::Delegate.
USDUTILS_API UsdUtilsCoalescingDiagnosticDelegateVector TakeCoalescedDiagnostics()
Get all pending diagnostics in a coalesced form.
USDUTILS_API void DumpCoalescedDiagnostics(std::ostream &ostr)
Print all pending diagnostics in a coalesced form to ostr.
std::vector< UsdUtilsCoalescingDiagnosticDelegateItem > UsdUtilsCoalescingDiagnosticDelegateVector
A vector of coalesced results, each containing a shared component, the file/function/line number,...
An item used in coalesced results, containing a shared component: the file/function/line number,...
The shared component in a coalesced result This type can be thought of as the key by which we coalesc...
The unshared component in a coalesced result.