// Get a layer using a LayerParameter. static shared_ptr<Layer<Dtype> > CreateLayer(const LayerParameter& param) { LOG(INFO) << "Creating layer " << param.name(); const string& type = param.type(); CreatorRegistry& registry = Registry(); CHECK_EQ(registry.count(type), 1) << "Unknown layer type: " << type << " (known types: " << LayerTypeList() << ")"; return registry[type](param); }
static string LayerTypeListString() { vector<string> layer_types = LayerTypeList(); string layer_types_str; for (vector<string>::iterator iter = layer_types.begin(); iter != layer_types.end(); ++iter) { if (iter != layer_types.begin()) { layer_types_str += ", "; } layer_types_str += *iter; } return layer_types_str; }