25 #ifndef PXR_BASE_TRACE_EVENT_LIST_H
26 #define PXR_BASE_TRACE_EVENT_LIST_H
36 #include <unordered_set>
55 TraceEventList&
operator=(TraceEventList&&) =
default;
59 TraceEventList&
operator=(
const TraceEventList&) =
delete;
77 template <
class... Args>
87 KeyCache::const_iterator it = _caches.front().insert(key).first;
97 template <
typename T>
98 decltype(std::declval<TraceDataBuffer>().
StoreData(std::declval<T>()))
113 std::unordered_set<TraceDynamicKey, TraceDynamicKey::HashFunctor>;
114 std::list<KeyCache> _caches;
121 #endif //PXR_BASE_TRACE_EVENT_LIST_H
decltype(std::declval< TraceDataBuffer >().StoreData(std::declval< T >())) StoreData(const T &value)
const TraceEvent & EmplaceBack(Args &&...args)
const_reverse_iterator rend() const
TRACE_API TraceEventList()
Constructor.
TraceEventContainer::const_reverse_iterator const_reverse_iterator
const_iterator end() const
const_reverse_iterator rbegin() const
TRACE_API void Append(TraceEventList &&other)
std::reverse_iterator< const_iterator > const_reverse_iterator
TraceEvent & emplace_back(Args &&...args)
TraceEventList & operator=(TraceEventList &&)=default
Move Assignment.
const_iterator begin() const
const_reverse_iterator rbegin() const
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
TraceKey CacheKey(const TraceDynamicKey &key)
#define PXR_NAMESPACE_CLOSE_SCOPE
**If you just want to fire and args
const_iterator end() const
const_iterator begin() const
bool IsEmpty() const
Returns whether there are any events in the list.
const_reverse_iterator rend() const
const T * StoreData(const T &value)