24 #ifndef PXR_BASE_TF_DECLARE_PTRS_H
25 #define PXR_BASE_TF_DECLARE_PTRS_H
38 PXR_NAMESPACE_OPEN_SCOPE
45 typedef std::vector< Ptr > PtrVector;
46 typedef std::vector< ConstPtr > ConstPtrVector;
50 typedef std::vector< RefPtr > RefPtrVector;
51 typedef std::vector< ConstRefPtr > ConstRefPtrVector;
62 #define TF_DECLARE_WEAK_PTRS(type) \
63 typedef TfDeclarePtrs< class type >::Ptr type##Ptr; \
64 typedef TfDeclarePtrs< class type >::ConstPtr type##ConstPtr; \
65 typedef TfDeclarePtrs< class type >::PtrVector type##PtrVector; \
66 typedef TfDeclarePtrs< class type >::ConstPtrVector type##ConstPtrVector
75 #define TF_DECLARE_REF_PTRS(type) \
76 typedef TfDeclarePtrs< class type >::RefPtr type##RefPtr; \
77 typedef TfDeclarePtrs< class type >::ConstRefPtr type##ConstRefPtr; \
78 typedef TfDeclarePtrs< class type >::RefPtrVector type##RefPtrVector; \
79 typedef TfDeclarePtrs< class type >::ConstRefPtrVector type##ConstRefPtrVector
89 #define TF_DECLARE_WEAK_AND_REF_PTRS(type) \
90 TF_DECLARE_WEAK_PTRS(type); \
91 TF_DECLARE_REF_PTRS(type)
93 PXR_NAMESPACE_CLOSE_SCOPE
Templated struct used for type definition macros.
Pointer storage with deletion detection.
Pointer storage with deletion detection.
Reference-counted smart pointer utility class.