All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
instantiateStacked.h
1//
2// Copyright 2016 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifdef PXR_BASE_TF_INSTANTIATE_STACKED_H
8#error This file may be included only once in a translation unit (.cpp file).
9#endif
10
11#define PXR_BASE_TF_INSTANTIATE_STACKED_H
12
13#include "pxr/pxr.h"
14#include "pxr/base/tf/stacked.h"
15
16PXR_NAMESPACE_OPEN_SCOPE
17
18#define TF_INSTANTIATE_STACKED(Derived) \
19 template <> \
20 std::atomic<typename Derived::Storage::Type*> \
21 Derived::Storage::value(nullptr)
22
23#define TF_INSTANTIATE_DEFINED_STACKED(Derived) \
24 std::atomic<typename Derived::Storage::Type*> \
25 Derived::Storage::value(nullptr)
26
27PXR_NAMESPACE_CLOSE_SCOPE