Scale Layer */
| 1275 | |
| 1276 | /** Scale Layer */ |
| 1277 | class ScaleLayer final : public ILayer |
| 1278 | { |
| 1279 | public: |
| 1280 | /** Construct a scale layer. |
| 1281 | * |
| 1282 | * @param[in] mul_w Accessor to get mul weight from. |
| 1283 | * @param[in] add_w Accessor to get add weight from. |
| 1284 | */ |
| 1285 | ScaleLayer(ITensorAccessorUPtr mul_w, ITensorAccessorUPtr add_w) |
| 1286 | : _mul_w(std::move(mul_w)), _add_w(std::move(add_w)) |
| 1287 | { |
| 1288 | } |
| 1289 | |
| 1290 | NodeID create_layer(IStream &s) override |
| 1291 | { |
| 1292 | NodeParams common_params = {name(), s.hints().target_hint}; |
| 1293 | NodeIdxPair input = {s.tail_node(), 0}; |
| 1294 | return GraphBuilder::add_scale_layer(s.graph(), common_params, input, std::move(_mul_w), std::move(_add_w)); |
| 1295 | } |
| 1296 | |
| 1297 | private: |
| 1298 | ITensorAccessorUPtr _mul_w; |
| 1299 | ITensorAccessorUPtr _add_w; |
| 1300 | }; |
| 1301 | |
| 1302 | /** Slice Layer */ |
| 1303 | class SliceLayer final : public ILayer |
no outgoing calls
no test coverage detected