The code is not complete as it is, GA_BlobData requires also implementation of `getMemoryUsage` and `countMemory`
virtual int64 getMemoryUsage (bool inclusive) const =0 virtual void countMemory (UT_MemoryCounter &counter, bool inclusive) const =0
How to use `GA_BlobData` properly? Is there a full working example?
Related question(not very usefull) [www.sidefx.com]
Crash report:
Crash report from tskrivan; Houdini FX Version 17.0.352 [linux-x86_64-gcc6.3] Uptime 111 seconds Wed Aug 21 19:47:02 2019 Caught signal 11 Traceback from 7572 ThreadId=0x7f4a2a356cc0 AP_Interface::coreDumpChaser(UTsignalHandlerArg) <libHoudiniUI.so> AP_Interface::si_CrashHandler::chaser(UTsignalHandlerArg) <libHoudiniUI.so> signalCallback(UTsignalHandlerArg) <libHoudiniUT.so> UT_Signal::UT_ComboSignalHandler::operator()(int, siginfo_t*, void*) const <libHoudiniUT.so> UT_Signal::processSignal(int, siginfo_t*, void*) <libHoudiniUT.so> __funlockfile <libpthread.so.0> GA_BlobContainer::getMemoryUsage(bool) const <libHoudiniGEO.so> GA_ATIBlob::getMemoryUsage(bool) const <libHoudiniGEO.so> GA_AttributeProxy::getMemoryUsage(bool) const <libHoudiniGEO.so> GA_AttributeSet::getMemoryUsage(bool) const <libHoudiniGEO.so> GA_Detail::getMemoryUsage(bool) const <libHoudiniGEO.so> GEO_Detail::getMemoryUsage(bool) const <libHoudiniGEO.so> GU_Detail::getMemoryUsage(bool) const <libHoudiniGEO.so> SOP_Node::getLoadedMemoryUsage() const <libHoudiniOP2.so> SOP_CacheManager::alertCookEndSOP(SOP_Node*) <libHoudiniOP2.so> SOP_Node::cookMe(OP_Context&) <libHoudiniOP2.so> OP_Node::cook(OP_Context&)::{lambda()#1}::operator()() const <libHoudiniPRM.so> OP_Node::cook(OP_Context&) <libHoudiniPRM.so> OP_Node::internalCookInput(OP_Context&, int, OP_Node&) <libHoudiniPRM.so> OP_Node::lockInput(unsigned int, OP_Context&) <libHoudiniPRM.so> SOP_Node::lockInput(unsigned int, OP_Context&) <libHoudiniOP2.so> SOP_Output::cookMySop(OP_Context&) <libHoudiniOP2.so> SOP_Node::cookMe(OP_Context&) <libHoudiniOP2.so> OP_Node::cook(OP_Context&)::{lambda()#1}::operator()() const <libHoudiniPRM.so> OP_Node::cook(OP_Context&) <libHoudiniPRM.so> SOP_Node::getCookedGeoHandle(OP_Context&, int)::{lambda()#1}::operator()() const <libHoudiniOP2.so> SOP_Node::getCookedGeoHandle(OP_Context&, int) <libHoudiniOP2.so> SOP_SubNet::cookMySop(OP_Context&) <libHoudiniOP2.so> SOP_Node::cookMe(OP_Context&) <libHoudiniOP2.so> OP_Node::cook(OP_Context&)::{lambda()#1}::operator()() const <libHoudiniPRM.so> OP_Node::cook(OP_Context&) <libHoudiniPRM.so> SOP_Node::getCookedGeoHandle(OP_Context&, int)::{lambda()#1}::operator()() const <libHoudiniOP2.so> SOP_Node::getCookedGeoHandle(OP_Context&, int) <libHoudiniOP2.so> OBJ_Node::getDisplayGeometryHandle(OP_Context&, int, OP_Node**) <libHoudiniOP3.so> JEDI_View::opuiUpdateNodeInfo(OH_NodeInfo*) <libHoudiniAPPS3.so> OH_OpHandler::opuiUpdateData() <libHoudiniUI.so> OP3D_View::doUpdate() <libHoudiniAPPS3.so> tbb::interface7::internal::task_arena_base::internal_execute(tbb::interface7::internal::delegate_base&) const (arena.cpp:899) TBBPROXY_TaskArenaExecute <libTBBPROXY.so> JEDI_View::opuiUpdateData() <libHoudiniAPPS3.so> OH_OpHandler::trigger() <libHoudiniUI.so> UI_Queue::processNextEvent() <libHoudiniUI.so> UI_Queue::drain() <libHoudiniUI.so> UI_Queue::eventLoop() <libHoudiniUI.so> main <libHoudiniUI.so> __libc_start_main (libc-start.c:291) main <houdini-bin>