24 #ifndef PXR_USD_USD_UTILS_SPARSE_VALUE_WRITER_H
25 #define PXR_USD_USD_UTILS_SPARSE_VALUE_WRITER_H
145 void _InitializeSparseAuthoring(
VtValue *defaultValue);
157 bool _didWritePrevValue=
true;
265 _attrValueWriterMap.clear();
271 std::vector<UsdUtilsSparseAttrValueWriter>
276 template <
typename T>
282 inline size_t operator() (
const UsdAttribute &attr)
const {
287 using _AttrValueWriterMap = std::unordered_map<
UsdAttribute,
290 _AttrValueWriterMap _attrValueWriterMap;
static constexpr UsdTimeCode Default()
const UsdAttribute & GetAttr() const
Returns the attribute that's held in the sparse value writer.
static VtValue Take(T &obj)
GT_API const UT_StringHolder time
USDUTILS_API UsdUtilsSparseAttrValueWriter(const UsdAttribute &attr, const VtValue &defaultValue=VtValue())
USDUTILS_API bool SetTimeSample(const VtValue &value, const UsdTimeCode time)
USDUTILS_API bool SetAttribute(const UsdAttribute &attr, const VtValue &value, const UsdTimeCode time=UsdTimeCode::Default())
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
USDUTILS_API void Clear()
USDUTILS_API std::vector< UsdUtilsSparseAttrValueWriter > GetSparseAttrValueWriters() const
size_t hash_value(const CH_ChannelRef &ref)
bool SetAttribute(const UsdAttribute &attr, T &value, const UsdTimeCode time=UsdTimeCode::Default())