Frame shape is not a vector

This commit is contained in:
2018-02-09 16:54:53 +01:00
parent a826652d07
commit b2cbb68961
2 changed files with 14 additions and 6 deletions
+6 -4
View File
@@ -34,6 +34,7 @@ void ProcessManager::write_h5(WriterManager& manager, const H5Format& format, Ri
continue;
}
// Write image data.
writer.write_frame_data(received_data.first->frame_index,
received_data.first->frame_shape,
received_data.first->frame_bytes_size,
@@ -43,6 +44,9 @@ void ProcessManager::write_h5(WriterManager& manager, const H5Format& format, Ri
ring_buffer.release(received_data.first->buffer_slot_index);
// Write header data.
writer.write_data();
manager.written_frame(received_data.first->frame_index);
}
@@ -139,7 +143,7 @@ void ProcessManager::receive_zmq(WriterManager& manager, RingBuffer& ring_buffer
#endif
}
boost::any get_value_from_json(const pt::ptree& json_header, const string& value_name, const HEADER_DATA_TYPE data_type)
boost::any ProcessManager::get_value_from_json(const pt::ptree& json_header, const string& value_name, const HEADER_DATA_TYPE data_type)
{
switch(data_type) {
case UINT8 :
@@ -181,10 +185,8 @@ shared_ptr<FrameMetadata> ProcessManager::read_json_header(pt::ptree& json_heade
header_data->frame_index = json_header.get<uint64_t>("frame");
uint8_t index = 0;
for (const auto& item : json_header.get_child("shape")) {
header_data->frame_shape[index] = item.second.get_value<size_t>();
++index;
header_data->frame_shape.insert(item.second.get_value<size_t>());
}
// Array 1.0 specified little endian as the default encoding.
+8 -2
View File
@@ -9,9 +9,15 @@
namespace ProcessManager
{
void run_writer(WriterManager& manager, const H5Format& format, const std::string& connect_address, uint16_t rest_port);
void receive_zmq(WriterManager& manager, RingBuffer& ring_buffer, const H5Format& format,
const std::string& connect_address, int n_io_threads=1, int receive_timeout=-1);
void write_h5(WriterManager& manager, const H5Format& format, RingBuffer& ring_buffer);
std::shared_ptr<FrameMetadata> read_json_header(boost::property_tree::ptree& json_header, const std::string& header,
const std::map<std::string, HEADER_DATA_TYPE>& header_data_type);
std::shared_ptr<FrameMetadata> read_json_header(boost::property_tree::ptree& json_header,
const std::string& header, const std::map<std::string, HEADER_DATA_TYPE>& header_data_type);
boost::any get_value_from_json(const boost::property_tree::ptree& json_header,
const string& value_name, const HEADER_DATA_TYPE data_type);
};