Lines Matching refs:buffer

21 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, std::monostate value)

23 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
29 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, void *value)
31 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
37 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, bool value)
39 return WriteBasic(buffer, type, (int8_t)(value));
41 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, int8_t value)
43 return WriteBasic(buffer, type, value);
45 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, int16_t value)
47 return WriteBasic(buffer, type, value);
49 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, double value)
51 return WriteBasic(buffer, type, value);
53 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, int32_t value)
55 return WriteBasic(buffer, type, value);
57 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, int64_t value)
59 return WriteBasic(buffer, type, value);
61 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, uint32_t value)
63 return WriteBasic(buffer, type, value);
65 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const std::string &value)
67 if (!HasExpectBuffer(buffer, sizeof(TLVHead) + value.size())) {
70 auto *tlvHead = reinterpret_cast<TLVHead *>(buffer.data() + cursor_);
84 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const RawMem &value)
86 if (!HasExpectBuffer(buffer, sizeof(TLVHead) + value.bufferLen)) {
89 auto *tlvHead = reinterpret_cast<TLVHead *>(buffer.data() + cursor_);
93 if (value.bufferLen != 0 && value.buffer != 0) {
94 auto err = memcpy_s(buffer.data() + cursor_, buffer.size() - cursor_,
95 reinterpret_cast<const void *>(value.buffer), value.bufferLen);
105 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const AAFwk::Want &value)
107 return Write(buffer, type, ParcelUtil::Parcelable2Raw(&value));
110 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const Media::PixelMap &value)
116 return Write(buffer, type, u8Value);
119 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const Object &value)
121 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
128 if (!Write(buffer, TAG_MAP_KEY, key)) {
131 if (!Write(buffer, TAG_MAP_VALUE_TYPE, val)) {
135 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
140 std::vector<std::uint8_t> &buffer, uint16_t type, std::map<std::string, std::vector<uint8_t>> &value)
142 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
151 ret = ret && Write(buffer, TAG_MAP_KEY, item.first);
152 ret = ret && Write(buffer, TAG_MAP_VALUE, item.second);
154 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
159 bool TLVObject::WriteVariant(std::vector<std::uint8_t> &buffer, uint16_t type, uint32_t step, const _InTp &input)
165 bool TLVObject::WriteVariant(std::vector<std::uint8_t> &buffer, uint16_t type, uint32_t step, const _InTp &input)
169 return Write(buffer, type, val);
171 return WriteVariant<_InTp, _Rest...>(buffer, type, step + 1, input);
175 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const std::variant<_Types...> &input)
177 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
185 if (!Write(buffer, TAG_VARIANT_INDEX, index)) {
188 WriteVariant<decltype(input), _Types...>(buffer, TAG_VARIANT_VALUE, 0, input);
189 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
194 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const EntryValue &input)
196 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
204 if (!Write(buffer, TAG_VARIANT_INDEX, index)) {
209 buffer, TAG_VARIANT_VALUE, 0, input);
210 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
214 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, const Details &value)
216 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
223 if (!Write(buffer, TAG_MAP_KEY, key)) {
226 if (!Write(buffer, TAG_MAP_VALUE_TYPE, val)) {
230 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
234 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, TLVObject &value)
236 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
242 bool ret = value.Encode(buffer, cursor_, buffer.size());
243 WriteHead(buffer, type, tagCursor, cursor_ - valueCursor);
247 bool TLVObject::Write(std::vector<std::uint8_t> &buffer, uint16_t type, std::vector<uint8_t> &value)
249 if (!HasExpectBuffer(buffer, sizeof(TLVHead) + value.size())) {
252 WriteHead(buffer, type, cursor_, value.size());
256 auto err = memcpy_s(buffer.data() + cursor_, buffer.size() - cursor_, value.data(), value.size());
264 bool TLVObject::ReadHead(const std::vector<std::uint8_t> &buffer, TLVHead &head)
266 if (!HasExpectBuffer(buffer, sizeof(TLVHead))) {
269 const auto *pHead = reinterpret_cast<const TLVHead *>(buffer.data() + cursor_);
270 if (!HasExpectBuffer(buffer, NetToHost(pHead->len)) &&
271 !HasExpectBuffer(buffer, NetToHost(pHead->len) + sizeof(TLVHead))) {
279 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, std::monostate &value, const TLVHead &head)
283 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, void *value, const TLVHead &head)
287 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, bool &value, const TLVHead &head)
289 return ReadBasicValue(buffer, value, head);
291 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, int8_t &value, const TLVHead &head)
293 return ReadBasicValue(buffer, value, head);
295 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, int16_t &value, const TLVHead &head)
297 return ReadBasicValue(buffer, value, head);
299 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, int32_t &value, const TLVHead &head)
301 return ReadBasicValue(buffer, value, head);
304 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, int64_t &value, const TLVHead &head)
306 return ReadBasicValue(buffer, value, head);
308 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, double &value, const TLVHead &head)
310 return ReadBasicValue(buffer, value, head);
312 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, uint32_t &value, const TLVHead &head)
314 return ReadBasicValue(buffer, value, head);
316 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, std::string &value, const TLVHead &head)
318 if (!HasExpectBuffer(buffer, head.len)) {
321 value.append(reinterpret_cast<const char *>(buffer.data() + cursor_), head.len);
325 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, RawMem &rawMem, const TLVHead &head)
327 if (!HasExpectBuffer(buffer, head.len)) {
330 rawMem.buffer = (uintptr_t)(buffer.data() + cursor_);
336 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, TLVObject &value, const TLVHead &head)
338 return value.Decode(buffer, cursor_, cursor_ + head.len);
340 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, std::vector<uint8_t> &value, const TLVHead &head)
342 if (!HasExpectBuffer(buffer, head.len)) {
345 std::vector<uint8_t> buff(buffer.data() + cursor_, buffer.data() + cursor_ + head.len);
351 const std::vector<std::uint8_t> &buffer, std::map<std::string, std::vector<uint8_t>> &value, const TLVHead &head)
357 bool ret = ReadHead(buffer, keyHead);
359 ret = ret && ReadValue(buffer, itemKey, keyHead);
363 ret = ret && ReadHead(buffer, valueHead);
365 ret = ret && ReadValue(buffer, itemValue, valueHead);
376 const std::vector<std::uint8_t> &buffer, uint32_t step, uint32_t index, _OutTp &output, const TLVHead &head)
383 const std::vector<std::uint8_t> &buffer, uint32_t step, uint32_t index, _OutTp &value, const TLVHead &head)
387 ReadHead(buffer, valueHead);
389 auto success = ReadValue(buffer, output, valueHead);
393 return ReadVariant<_OutTp, _Rest...>(buffer, step + 1, index, value, head);
397 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, std::variant<_Types...> &value, const TLVHead &head)
400 ReadHead(buffer, valueHead);
402 if (!ReadValue(buffer, index, valueHead)) {
405 return ReadVariant<decltype(value), _Types...>(buffer, 0, index, value, valueHead);
409 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, EntryValue &value, const TLVHead &head)
412 ReadHead(buffer, valueHead);
414 if (!ReadValue(buffer, index, valueHead)) {
420 buffer, 0, index, value, valueHead);
423 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, Details &value, const TLVHead &head)
428 if (!ReadHead(buffer, keyHead)) {
432 if (!ReadValue(buffer, itemKey, keyHead)) {
436 if (!ReadHead(buffer, variantHead)) {
440 if (!ReadValue(buffer, itemValue, variantHead)) {
448 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, Object &value, const TLVHead &head)
453 if (!ReadHead(buffer, keyHead)) {
457 if (!ReadValue(buffer, itemKey, keyHead)) {
461 if (!ReadHead(buffer, valueHead)) {
465 if (!ReadValue(buffer, itemValue, head)) {
473 bool TLVObject::ReadValue(const std::vector<std::uint8_t> &buffer, AAFwk::Want &value, const TLVHead &head)
476 if (!ReadValue(buffer, rawMem, head)) {
488 const std::vector<std::uint8_t> &buffer, std::shared_ptr<Media::PixelMap> &value, const TLVHead &head)
491 if (!ReadValue(buffer, u8Value, head)) {
498 bool TLVObject::Encode(std::vector<std::uint8_t> &buffer, size_t &cursor, size_t total)
502 bool ret = Encode(buffer);
506 bool TLVObject::Decode(const std::vector<std::uint8_t> &buffer, size_t &cursor, size_t total)
510 bool ret = Decode(buffer);