8 #ifndef PXR_BASE_TRACE_EVENT_LIST_H
9 #define PXR_BASE_TRACE_EVENT_LIST_H
19 #include <unordered_set>
38 TraceEventList&
operator=(TraceEventList&&) =
default;
42 TraceEventList&
operator=(
const TraceEventList&) =
delete;
60 template <
class... Args>
70 KeyCache::const_iterator it = _caches.front().insert(key).first;
80 template <
typename T>
81 decltype(std::declval<TraceDataBuffer>().
StoreData(std::declval<T>()))
96 std::unordered_set<TraceDynamicKey, TraceDynamicKey::HashFunctor>;
97 std::list<KeyCache> _caches;
104 #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.
GLsizei const GLfloat * value
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)