18 #ifndef PRTX_CLASSUTILS_H_ 19 #define PRTX_CLASSUTILS_H_ 21 #include "prt/Object.h" 23 #include "prtx/prtx.h" 32 class AttributeMapBuilder;
34 class ResolveMapBuilder;
36 class InitialShapeBuilder;
39 class EncoderInfoBuilder;
44 class FileOutputCallbacks;
45 class MemoryOutputCallbacks;
79 P*
get()
const {
return mPRT.get(); }
80 P* operator->()
const {
return mPRT.get(); }
81 P& operator*()
const {
return *mPRT; }
82 bool operator<(const ObjectPtr<P>& rhs)
const {
return (mPRT.get() < rhs.mPRT.get()); }
83 bool operator==(
const ObjectPtr<P>& rhs)
const {
return (mPRT.get() == rhs.mPRT.get()); }
84 bool operator()()
const {
return (
bool)mPRT; }
85 explicit operator bool()
const {
return mPRT.operator bool(); }
90 std::shared_ptr<P> mPRT;
116 using AttributeMapUPtr = std::unique_ptr<prt::AttributeMap const, prtx::PRTUtils::ObjectDestroyer>;
117 using AttributeMapBuilderUPtr = std::unique_ptr<prt::AttributeMapBuilder, prtx::PRTUtils::ObjectDestroyer>;
118 using ResolveMapUPtr = std::unique_ptr<prt::ResolveMap const, prtx::PRTUtils::ObjectDestroyer>;
119 using ResolveMapBuilderUPtr = std::unique_ptr<prt::ResolveMapBuilder, prtx::PRTUtils::ObjectDestroyer>;
120 using EncoderInfoUPtr = std::unique_ptr<prt::EncoderInfo const, prtx::PRTUtils::ObjectDestroyer>;
121 using EncoderInfoBuilderUPtr = std::unique_ptr<prt::EncoderInfoBuilder, prtx::PRTUtils::ObjectDestroyer>;
124 using FileOutputCallbacksUPtr = std::unique_ptr<prt::FileOutputCallbacks, prtx::PRTUtils::ObjectDestroyer>;
126 using MemoryOutputCallbacksUPtr = std::unique_ptr<prt::MemoryOutputCallbacks, prtx::PRTUtils::ObjectDestroyer>;
std::unique_ptr< prt::AttributeMap const, prtx::PRTUtils::ObjectDestroyer > AttributeMapUPtr
Definition: PRTUtils.h:116
std::string objectToXML(prt::Object const *const p)
Definition: PRTUtils.h:62
Definition: PRTUtils.h:70
The Procedural Runtime eXtension namespace. The prtx namespace contains the tools to extend the Proce...
Definition: AnnotationBuilder.h:35
The Procedural Runtime API namespace. The prt namespace contains the top level entry points into the ...
Definition: Annotation.h:24