24#ifndef PXR_USD_AR_DEFINE_RESOLVER_H
25#define PXR_USD_AR_DEFINE_RESOLVER_H
31#include "pxr/usd/ar/api.h"
35#include "pxr/base/tf/type.h"
37PXR_NAMESPACE_OPEN_SCOPE
50#define AR_DEFINE_RESOLVER(ResolverClass, BaseClass1, ...)
52#define AR_DEFINE_RESOLVER(...) \
53TF_REGISTRY_FUNCTION(TfType) { \
54 Ar_DefineResolver<__VA_ARGS__>(); \
58class Ar_ResolverFactoryBase
63 virtual ~Ar_ResolverFactoryBase();
70class Ar_ResolverFactory
71 :
public Ar_ResolverFactoryBase
80template <
class Resolver,
class ...Bases>
81void Ar_DefineResolver()
84 .
template SetFactory<Ar_ResolverFactory<Resolver> >();
87PXR_NAMESPACE_CLOSE_SCOPE
Interface for the asset resolution system.
Base class of all factory types.
static TfType const & Define()
Define a TfType with the given C++ type T and C++ base types B.
A type-list of C++ base types.