36 size_t msg_len = pb_msg->ByteSize();
37 size_t total_size = HEADER_BUF_SIZE + msg_len;
39 buf->
reset(total_size);
41 buf->
write(0, reinterpret_cast<char *>(&msg_len),
sizeof(
size_t));
42 pb_msg->SerializeToArray(reinterpret_cast<char *>(buf +
sizeof(
size_t)),
43 static_cast<int>(msg_len));
51 typename std::vector<T *>::iterator itor = list->begin();
52 for (; itor != list->end();) {
56 itor = list->erase(itor);
65 bool RemoveItem(std::vector<std::shared_ptr<T>> *list, std::shared_ptr<T> t) {
69 typename std::vector<std::shared_ptr<T>>::iterator itor = list->begin();
70 for (; itor != list->end();) {
71 if (itor->get() == t.get()) {
72 itor = list->erase(itor);
bool RemoveItem(std::vector< T *> *list, const T *t)
Definition: util.h:47
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
void WriteToBuffer(BridgeBuffer< char > *buf, const std::shared_ptr< T > &pb_msg)
Definition: util.h:32
void write(size_t index, const T *data, size_t size)
const int HEADER_BUF_SIZE
Definition: util.h:30
int GetProtoSize(const char *buf, size_t size)
#define FREE_POINTER(p)
Definition: macro.h:30
Definition: bridge_buffer.h:25