Implement a new layer data type.

Contrary to layerdata, this describes the layer itself rather than the
layer contents.
This commit is contained in:
2018-01-02 16:17:07 +01:00
parent 5c0dbcdaa4
commit 470399aabf
4 changed files with 116 additions and 13 deletions

35
src/LayerInfo.hpp Normal file
View File

@@ -0,0 +1,35 @@
#pragma once
#include <string_view>
#include <caffe/blob.hpp>
#include <string>
#include "utils.hpp"
namespace fmri
{
class LayerInfo
{
public:
enum class Type
{
Input,
Convolutional,
ReLU,
Pooling,
Output,
Other
};
LayerInfo(std::string_view name, std::string_view type,
const std::vector<boost::shared_ptr<caffe::Blob<DType>>> &parameters);
const std::string& name() const;
static Type typeByName(std::string_view name);
private:
std::vector<boost::shared_ptr<caffe::Blob<DType>>> parameters_;
Type type_;
std::string name_;
};
}