24#ifndef PXR_BASE_TF_CALL_CONTEXT_H
25#define PXR_BASE_TF_CALL_CONTEXT_H
39#include "pxr/base/tf/api.h"
44PXR_NAMESPACE_OPEN_SCOPE
47#define TF_CALL_CONTEXT \
48TfCallContext(__ARCH_FILE__, __ARCH_FUNCTION__, __LINE__, __ARCH_PRETTY_FUNCTION__)
53 constexpr TfCallContext()
57 , _prettyFunction(nullptr)
60 constexpr TfCallContext(
char const *file,
63 char const *prettyFunction) :
67 _prettyFunction(prettyFunction),
72 char const *GetFile()
const {
76 char const *GetFunction()
const {
80 size_t GetLine()
const {
84 char const *GetPrettyFunction()
const {
85 return _prettyFunction;
88 TfCallContext
const& Hide()
const {
93 bool IsHidden()
const {
97 explicit operator bool()
const {
return _file && _function; }
102 char const *_function;
104 char const *_prettyFunction;
105 mutable bool _hidden;
108PXR_NAMESPACE_CLOSE_SCOPE
Define preprocessor function name macros.