TagHandle ArrayMesh::tag_create( const std::string& tag_name, TagType data_type, unsigned size, const void* default_value, MsqError &err) { Tag* tag = allocate_tag( tag_name.c_str(), true, data_type, size, 0, 0, 0, 0, default_value, err ); MSQ_ERRZERO(err); return reinterpret_cast<TagHandle>(tag); }
WorkItem(const Request& req, ExtraSendFun* send_extra, ExtraRecvFun* recv_extra) : request(req) , request_tag(allocate_tag()) , request_type(vfsprotocol::RequestTraits<Request>::request_type) , request_desc(vfsprotocol::request_type_to_string(request_type)) , send_extra_fun(send_extra) , recv_extra_fun(recv_extra) // clang++ (3.8.0-2ubuntu3~trusty4) complains otherwise about // 'promise' being used unitialized when initializing 'future' , promise() , future(promise.get_future()) {}
TagHandle ArrayMesh::add_writable_tag_data( const char* tag_name, TagType data_type, int vals_per_entity, void* vertex_data, void* element_data, const void* default_value, MsqError& err ) { Tag* tag = allocate_tag( tag_name, false, data_type, vals_per_entity, 0, vertex_data, 0, element_data, default_value, err ); MSQ_ERRZERO(err); return reinterpret_cast<TagHandle>(tag); }