Logo
filedescription.hh
Go to the documentation of this file.
1 #pragma once
2 
3 #include "fileinfo.hh"
4 #include "../common/logical_block_metadata.hh"
5 #include <vector>
6 #include <map>
7 
8 namespace eclipse {
9 namespace messages {
10 
11 struct FileDescription: public FileInfo {
12  FileDescription() = default;
13  ~FileDescription() = default;
14 
16 
17  std::string get_type() const override;
18 
19  std::vector<std::string> primary_files;
20  std::vector<std::string> blocks;
21  std::vector<uint32_t> hash_keys;
22 
23  std::vector<uint64_t> block_size;
24  std::vector<uint64_t> offsets;
25  std::vector<uint64_t> offsets_in_file;
26  std::vector<uint32_t> chunk_sequences;
27  std::vector<uint32_t> primary_sequences;
28  std::vector<std::string> block_hosts;
29 
30  std::vector<logical_block_metadata> logical_blocks; // TODO, refactor this hell
31 
32  uint32_t num_static_blocks = 0;
33 };
34 
35 }
36 }
37 
Definition: block_node.cc:12
Definition: filedescription.hh:11
std::vector< uint64_t > offsets
Definition: filedescription.hh:24
std::vector< uint64_t > block_size
Definition: filedescription.hh:23
std::vector< std::string > block_hosts
Definition: filedescription.hh:28
std::vector< uint32_t > primary_sequences
Definition: filedescription.hh:27
std::vector< logical_block_metadata > logical_blocks
Definition: filedescription.hh:30
std::vector< uint32_t > chunk_sequences
Definition: filedescription.hh:26
std::vector< uint32_t > hash_keys
Definition: filedescription.hh:21
uint32_t num_static_blocks
Definition: filedescription.hh:32
std::vector< uint64_t > offsets_in_file
Definition: filedescription.hh:25
std::vector< std::string > blocks
Definition: filedescription.hh:20
FileDescription & operator=(FileDescription &)
Definition: filedescription.cc:5
std::vector< std::string > primary_files
Definition: filedescription.hh:19
std::string get_type() const override
Definition: filedescription.cc:19
Definition: fileinfo.hh:10