C++ API Reference for Intel® Data Analytics Acceleration Library 2018 Update 3

layer_forward_descriptor.h
1 /* file: layer_forward_descriptor.h */
2 /*******************************************************************************
3 * Copyright 2014-2018 Intel Corporation.
4 *
5 * This software and the related documents are Intel copyrighted materials, and
6 * your use of them is governed by the express license under which they were
7 * provided to you (License). Unless the License provides otherwise, you may not
8 * use, modify, copy, publish, distribute, disclose or transmit this software or
9 * the related documents without Intel's prior written permission.
10 *
11 * This software and the related documents are provided as is, with no express
12 * or implied warranties, other than those that are expressly stated in the
13 * License.
14 *******************************************************************************/
15 
16 /*
17 //++
18 // Implementation of neural network forward layer descriptor.
19 //--
20 */
21 
22 #ifndef __LAYER_FORWARD_DESCRIPTOR_H__
23 #define __LAYER_FORWARD_DESCRIPTOR_H__
24 
25 #include "algorithms/neural_networks/layers/layer_forward.h"
26 
27 namespace daal
28 {
29 namespace algorithms
30 {
34 namespace neural_networks
35 {
39 namespace layers
40 {
44 namespace forward
45 {
46 namespace interface1
47 {
57 class LayerDescriptor
58 {
59 public:
60  DAAL_NEW_DELETE();
61 
63  LayerDescriptor(): _index(0) {}
64 
72  LayerDescriptor(const size_t index_, const forward::LayerIfacePtr &layer_, const NextLayers &nextLayers_) :
73  _index(index_), _layer(layer_), _nextLayers(nextLayers_) {}
74 
80  LayerDescriptor(const size_t index_, const forward::LayerIfacePtr &layer_) : _index(index_), _layer(layer_) {}
81 
83  LayerDescriptor(const LayerDescriptor& other): _index(other._index), _layer(other._layer), _nextLayers(other._nextLayers) {}
84 
89  size_t index() const { return _index; }
90 
97  services::Status addNext(size_t index)
98  {
99  _nextLayers.add(index);
100  return services::Status();
101  }
102 
107  const forward::LayerIfacePtr & layer() const { return _layer; }
108 
113  const NextLayers & nextLayers() const { return _nextLayers; }
114 
115 private:
116  forward::LayerIfacePtr _layer;
117  NextLayers _nextLayers;
118  size_t _index;
119 };
121 } // namespace interface1
122 using interface1::LayerDescriptor;
123 } // namespace forward
124 } // namespace layers
125 } // namespace neural_networks
126 } // namespace algorithms
127 } // namespace daal
128 #endif
daal::algorithms::neural_networks::layers::interface1::LayerDescriptor
Class defining descriptor for layer on both forward and backward stages and its parameters.
Definition: layer_descriptor.h:45
daal
Definition: algorithm_base_common.h:31
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::layer
const forward::LayerIfacePtr & layer() const
Definition: layer_forward_descriptor.h:107
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::nextLayers
const NextLayers & nextLayers() const
Definition: layer_forward_descriptor.h:113
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::LayerDescriptor
LayerDescriptor(const LayerDescriptor &other)
Definition: layer_forward_descriptor.h:83
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::addNext
services::Status addNext(size_t index)
Definition: layer_forward_descriptor.h:97
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::LayerDescriptor
LayerDescriptor(const size_t index_, const forward::LayerIfacePtr &layer_)
Definition: layer_forward_descriptor.h:80
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor
Class defining descriptor for layer on forward stage.
Definition: layer_forward_descriptor.h:57
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::index
size_t index() const
Definition: layer_forward_descriptor.h:89
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::LayerDescriptor
LayerDescriptor()
Definition: layer_forward_descriptor.h:63
daal::algorithms::neural_networks::layers::forward::interface1::LayerDescriptor::LayerDescriptor
LayerDescriptor(const size_t index_, const forward::LayerIfacePtr &layer_, const NextLayers &nextLayers_)
Definition: layer_forward_descriptor.h:72

For more complete information about compiler optimizations, see our Optimization Notice.