int IndexRow::writeBuffer(char* pageBuffer,int offset) { assert(pageBuffer); ///////////KEY///////////////// pageBuffer[offset]=(uint8_t)this->getKeySize(); offset+=1;//keySize memcpy((void*)(pageBuffer[offset]),this->getKey(),this->getKeySize()); offset+=this->getKeySize();//key ///////////PAGE///////////////// setU32(pageBuffer,offset,this->pageNo); offset+=4; return 1; }
void MappedValues::fromJson(const Json::Value& root) { Json::Value floats = root["Floats"], ints = root["Ints"], uints = root["Uints"], strings = root["Strings"], vector2s = root["Vector2s"], vector3s = root["Vector3s"], vector4s = root["Vector4s"], matrix2s = root["Matrix2s"], matrix3s = root["Matrix3s"], matrix4s = root["Matrix4s"], textures = root["Textures"]; for (auto i = floats.begin(); i != floats.end(); i++) { setFloat(i.name(), (*i).asFloat()); } for (auto i = ints.begin(); i != ints.end(); i++) { setI32(i.name(), (*i).asInt()); } for (auto i = uints.begin(); i != uints.end(); i++) { setU32(i.name(), (*i).asUInt()); } for (auto i = strings.begin(); i != strings.end(); i++) { setString(i.name(), (*i).asString()); } for (auto i = vector2s.begin(); i != vector2s.end(); i++) { Vector2 vec((*i)[0].asFloat(), (*i)[1].asFloat()); setVector2(i.name(), vec); } for (auto i = vector3s.begin(); i != vector3s.end(); i++) { Vector3 vec((*i)[0].asFloat(), (*i)[1].asFloat(), (*i)[2].asFloat()); setVector3(i.name(), vec); } for (auto i = vector4s.begin(); i != vector4s.end(); i++) { Vector4 vec((*i)[0].asFloat(), (*i)[1].asFloat(), (*i)[2].asFloat(), (*i)[3].asFloat()); setVector4(i.name(), vec); } for (auto i = matrix2s.begin(); i != matrix2s.end(); i++) { Matrix2 mat((*i)[0].asFloat(), (*i)[1].asFloat(), (*i)[2].asFloat(), (*i)[3].asFloat()); setMatrix2(i.name(), mat); } for (auto i = matrix3s.begin(); i != matrix3s.end(); i++) { Matrix3 mat((*i)[0].asFloat(), (*i)[1].asFloat(), (*i)[2].asFloat(), (*i)[3].asFloat(), (*i)[4].asFloat(), (*i)[5].asFloat(), (*i)[6].asFloat(), (*i)[7].asFloat(), (*i)[8].asFloat()); setMatrix3(i.name(), mat); } for (auto i = matrix4s.begin(); i != matrix4s.end(); i++) { Matrix4 mat((*i)[0].asFloat(), (*i)[1].asFloat(), (*i)[2].asFloat(), (*i)[3].asFloat(), (*i)[4].asFloat(), (*i)[5].asFloat(), (*i)[6].asFloat(), (*i)[7].asFloat(), (*i)[8].asFloat(), (*i)[9].asFloat(), (*i)[10].asFloat(), (*i)[11].asFloat(), (*i)[12].asFloat(), (*i)[13].asFloat(), (*i)[14].asFloat(), (*i)[15].asFloat()); setMatrix4(i.name(), mat); } for (auto i = textures.begin(); i != textures.end(); i++) { setTexture(i.name(), resourceManager->fetchTextureLoad((*i).asString())); } }
void setExtLen(uint32_t len) { setU32(4, len); }