LCFIVertex  0.7.2
SigmoidNeuronBuilder.h
1 #ifndef SIGMOIDNEURONBUILDER_H
2 #define SIGMOIDNEURONBUILDER_H
3 
4 #include "NeuralNetConfig.h"
5 #include "NeuronBuilder.h"
6 
7 #include <string>
8 #include <vector>
9 
10 #ifdef __CINT__
11 #include "Neuron.h"
12 #else
13 //namespace nnet added 15/08/06 by Mark Grimes (mark.grimes@bristol.ac.uk) for the LCFI vertex package
14 namespace nnet
15 {
16 class Neuron;
17 }
18 #endif
19 
20 //namespace nnet added 15/08/06 by Mark Grimes (mark.grimes@bristol.ac.uk) for the LCFI vertex package
21 namespace nnet
22 {
23 
24 class
25 #ifndef __CINT__
26 NEURALNETDLL
27 #endif
29  : public NeuronBuilder
30 {
31 public:
33  ~SigmoidNeuronBuilder(void);
34  Neuron *buildNeuron(const int numberOfInputs,const double bias=-1.0) const;
35  Neuron *buildNeuron(const int numberOfInputs,const std::vector<double> &constructionData) const;
36  void setConstructedNeuronResponse(const double response)
37  { _response = response;}
38  std::string buildsType() const
39  { return "SigmoidNeuron";}
40 
41 private:
42  double _response;
43 };
44 
45 }//namespace nnet
46 
47 #endif