11 #ifndef __GU_PackedGeometry__
12 #define __GU_PackedGeometry__
79 {
return loadFrom(options, map); }
85 {
return loadFrom(options, map); }
126 bool inclusive)
const override;
146 loadPackedGeometry();
157 return treatAsFolder();
170 bool copy_unique_id,
bool bump_count,
bool copy_detail);
173 template <
typename T>
174 bool loadFrom(
const T &options,
const GA_LoadMap &map);
178 bool statPackedGeometry()
const;
192 template <
bool VISIBLE_ONLY>
virtual void getVelocityRange(UT_Vector3 &min, UT_Vector3 &max) const =0
UT_JSONValueMap stores a map/dictionary of UT_JSONValue objects.
Used to pass options and map offset values during saving.
UT_BoundingBox myStatBounds
OIIO_UTIL_API bool copy(string_view from, string_view to, std::string &err)
bool supportsJSONLoad() const override
virtual bool unpackWithContext(GU_Detail &destgdp, GU_PackedContext &context, const GU_PrimPacked *prim) const
ImageBuf OIIO_API min(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
virtual bool getBounds(UT_BoundingBox &box) const =0
Get the bounding box for the geometry (not including transforms)
Class which writes ASCII or binary JSON streams.
UT_SharedPtr< GA_SharedDataHandle > GA_SharedDataHandlePtr
Geometry Embedded procedural.
virtual bool getRenderingBounds(UT_BoundingBox &box) const =0
GU_PackedImpl & operator=(const GU_PackedImpl &src)=default
virtual bool isLoaded() const
bool loadFromJSON(GU_PrimPacked *prim, const UT_JSONValueMap &options, const GA_LoadMap &map) override
virtual bool getVisibleBounds(UT_BoundingBox &box) const
virtual void forceLoad() const
virtual void clearData()=0
void setTreatAsFolder(bool b)
virtual int64 getMemoryUsage(bool inclusive) const =0
Report memory usage (includes all shared memory)
bool treatAsFolder() const
virtual void countMemory(UT_MemoryCounter &counter, bool inclusive) const =0
bool loadSharedData(int dtype, const GA_SharedLoadData *it) override
virtual GU_PackedFactory * getFactory() const =0
Get the factory associated with this procedural.
virtual GU_ConstDetailHandle getPackedDetail(GU_PackedContext *context=0) const
GA_SharedDataHandlePtr mySharedData
GLboolean GLboolean GLboolean b
GA_API const UT_StringHolder transform
void intrinsicSetTreatAsFolder(GU_PrimPacked *prim, bool b)
exint getUniqueId() const
virtual bool isValid() const =0
Test whether the deferred load primitive data is valid.
bool intrinsicTreatAsFolder(const GU_PrimPacked *prim) const
virtual void update(GU_PrimPacked *prim, const UT_Options &options)=0
A map of string to various well defined value types.
virtual GU_PackedImpl * copy() const =0
Create a copy of this resolver.
bool unpack(GU_Detail &destgdp, const GU_PrimPacked *prim) const
GU_ConstDetailHandle myDetail
ImageBuf OIIO_API max(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
virtual bool saveSharedData(UT_JSONWriter &w, GA_SaveMap &map, GA_GeometryIndex *geo_index) const
GLubyte GLubyte GLubyte GLubyte w
virtual bool save(UT_Options &options, const GA_SaveMap &map) const =0
Copy the resolver data into the UT_Options for saving.
exint intrinsicGeometryId(const GU_PrimPacked *prim) const
bool saveCachedBBox() const override
const GU_Detail * getGdp() const
bool load(GU_PrimPacked *prim, const UT_Options &options, const GA_LoadMap &map) override
static GA_PrimitiveTypeId typeId()
Get the type ID for the GU_PackedGeometry primitive type.
static GA_PrimitiveTypeId theTypeId
virtual void getWidthRange(fpreal &wmin, fpreal &wmax) const =0