~iliaplatone/spacedrone.eu/inova-sis-pack

« back to all changes in this revision

Viewing changes to usr/include/builders/ie_gru_sequence_layer.hpp

  • Committer: Ilia Platone
  • Date: 2022-11-15 16:19:28 UTC
  • Revision ID: git-v1:b9f4c8dff67bb705341db6a18f84a3d5f61c23ce
Initial commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright (C) 2018-2019 Intel Corporation
 
2
// SPDX-License-Identifier: Apache-2.0
 
3
//
 
4
 
 
5
#pragma once
 
6
 
 
7
#include <builders/ie_layer_decorator.hpp>
 
8
#include <ie_network.hpp>
 
9
#include <vector>
 
10
#include <string>
 
11
 
 
12
namespace InferenceEngine {
 
13
namespace Builder {
 
14
 
 
15
/**
 
16
 * @brief The class represents a builder for GRUSequence layer
 
17
 */
 
18
class INFERENCE_ENGINE_API_CLASS(GRUSequenceLayer): public LayerDecorator {
 
19
public:
 
20
    /**
 
21
     * @brief The constructor creates a builder with the name
 
22
     * @param name Layer name
 
23
     */
 
24
    explicit GRUSequenceLayer(const std::string& name = "");
 
25
    /**
 
26
     * @brief The constructor creates a builder from generic builder
 
27
     * @param layer pointer to generic builder
 
28
     */
 
29
    explicit GRUSequenceLayer(const Layer::Ptr& layer);
 
30
    /**
 
31
     * @brief The constructor creates a builder from generic builder
 
32
     * @param layer constant pointer to generic builder
 
33
     */
 
34
    explicit GRUSequenceLayer(const Layer::CPtr& layer);
 
35
    /**
 
36
     * @brief Sets the name for the layer
 
37
     * @param name Layer name
 
38
     * @return reference to layer builder
 
39
     */
 
40
    GRUSequenceLayer& setName(const std::string& name);
 
41
 
 
42
    /**
 
43
     * @brief Returns input ports with shapes for the layer
 
44
     * @return Vector of ports
 
45
     */
 
46
    const std::vector<Port>& getInputPorts() const;
 
47
    /**
 
48
     * @brief Sets input ports for the layer
 
49
     * @param ports vector of input ports
 
50
     * @return reference to layer builder
 
51
     */
 
52
    GRUSequenceLayer& setInputPorts(const std::vector<Port>& ports);
 
53
 
 
54
    /**
 
55
     * @brief Returns output ports with shapes for the layer
 
56
     * @return Vector of ports
 
57
     */
 
58
    const std::vector<Port>& getOutputPorts() const;
 
59
    /**
 
60
     * @brief Sets output ports for the layer
 
61
     * @param ports vector of output ports
 
62
     * @return reference to layer builder
 
63
     */
 
64
    GRUSequenceLayer& setOutputPorts(const std::vector<Port>& ports);
 
65
 
 
66
    int getHiddenSize() const;
 
67
    GRUSequenceLayer& setHiddenSize(int size);
 
68
    bool getSequenceDim() const;
 
69
    GRUSequenceLayer& setSqquenceDim(bool flag);
 
70
    const std::vector<std::string>& getActivations() const;
 
71
    GRUSequenceLayer& setActivations(const std::vector<std::string>& activations);
 
72
    const std::vector<float>& getActivationsAlpha() const;
 
73
    GRUSequenceLayer& setActivationsAlpha(const std::vector<float>& activations);
 
74
    const std::vector<float>& getActivationsBeta() const;
 
75
    GRUSequenceLayer& setActivationsBeta(const std::vector<float>& activations);
 
76
    float getClip() const;
 
77
    GRUSequenceLayer& setClip(float clip);
 
78
    bool getLinearBeforeReset() const;
 
79
    GRUSequenceLayer& setLinearBeforeReset(bool flag);
 
80
    const std::string& getDirection() const;
 
81
    GRUSequenceLayer& setDirection(const std::string& direction);
 
82
};
 
83
 
 
84
}  // namespace Builder
 
85
}  // namespace InferenceEngine
 
86
 
 
87