- moved all functions to Layer
- added Stack git-svn-id: http://moon:8086/svn/software/trunk/projects/Rbm@577 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
/*
|
||||
* File: ILayer.hpp
|
||||
* Author: jens
|
||||
*
|
||||
* Created on 25. Oktober 2019, 18:33
|
||||
*/
|
||||
|
||||
#ifndef ILAYER_HPP
|
||||
#define ILAYER_HPP
|
||||
|
||||
#include <armadillo>
|
||||
|
||||
class ILayer
|
||||
{
|
||||
public:
|
||||
ILayer *upper;
|
||||
ILayer *lower;
|
||||
|
||||
ILayer()
|
||||
: upper(nullptr)
|
||||
, lower(nullptr)
|
||||
{}
|
||||
|
||||
virtual ~ILayer()
|
||||
{}
|
||||
|
||||
virtual void up_pass(arma::mat const &v) = 0;
|
||||
virtual void down_pass(arma::mat &dst, arma::mat const &src) = 0;
|
||||
void registerLayer(ILayer *pLayer)
|
||||
{
|
||||
lower = pLayer;
|
||||
pLayer->upper = this;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
#endif /* ILAYER_HPP */
|
||||
|
||||
Reference in New Issue
Block a user