24 #ifndef PXR_BASE_PLUG_STATIC_INTERFACE_H
25 #define PXR_BASE_PLUG_STATIC_INTERFACE_H
33 #include <type_traits>
159 template <
class Interface>
163 "Interface type must be abstract.");
206 Interface* _GetPtr()
const
214 return static_cast<Interface*
>(
_ptr);
220 #endif // PXR_BASE_PLUG_STATIC_INTERFACE_H
bool IsInitialized() const
PlugStaticInterface< Interface > This
GLsizei const GLfloat * value
Interface * operator->() const
void *Plug_StaticInterfaceBase::* UnspecifiedBoolType
PLUG_API void _LoadAndInstantiate(const std::type_info &type) const
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Interface & operator*() const
#define PXR_NAMESPACE_CLOSE_SCOPE
std::atomic< bool > _initialized