TarzaNN
TarzaNN neural network simulator
C:/Users/albertlr/projects/TarzaNN/TarzaNN/InputMultipleFeaturePlane.h
Go to the documentation of this file.
00001 #ifndef INPUTMULTIPLEFEATUREPLANE_H_INCLUDED
00002 #define INPUTMULTIPLEFEATUREPLANE_H_INCLUDED
00003 
00004 #include  <qimage.h>
00005 
00006 #include "nowarn.h"
00007 #include "common.h"
00008 #include <stdlib.h>
00009 
00010 #include "OutputImage.h"
00011 #include "InputFeaturePlaneAbstract.h"
00012 #include "FeaturePlaneInput.h"
00013 #include "NotifyStrategyASync.h"
00014 #include "NotifyStrategySync.h"
00015 
00016 class ImageSequence{
00017         friend class InputMultipleFeaturePlane;
00018 public:
00019         ImageSequence(int size, int window, bool input_scale, float input_min, float input_max);
00020         ~ImageSequence();
00021         OutputImage* getCurrentOutput(int index);
00022         OutputImage** getCurrentOutputs();
00024         void appendImage(OutputImage* tempOImage, QImage* image);
00026         void appendImage(QImage* image);
00027         void step();
00028         void applyGatingControl(Matrix* theGatingControl);
00029         void applyIOR(Matrix* theGatingControl);
00031         int getSize();
00032         OutputImage** theSequence;
00033         OutputImage** backupSequence;
00034         QImage** originalSequence;
00035         int size, last, current, window;
00036         bool input_scale;
00037         float input_min, input_max;
00038 };
00039 
00041 class InputMultipleFeaturePlane : public InputFeaturePlaneAbstract {
00042         friend class FeaturePlaneFactory;
00043 public:
00044     ~InputMultipleFeaturePlane();
00046         OutputImage* getCurrentOutput();
00047         OutputImage* getCurrentOutput(int index);
00049         OutputImage** getCurrentOutputs();
00050         void inhibitReturn();
00051 
00052 protected:
00053         char* mask_filename;
00054         bool input_scale;
00055         float input_min, input_max;
00056         int window;
00057         
00067         InputMultipleFeaturePlane( Network* net, int l, char* filename, int window, QString* name, bool isWTA, bool visible, bool scale, float min, float max, int occluder_freq, int occluder_width, const char* occulder_file, NotifyStrategyAbstract* notify);
00068 
00069 private:
00070         void step();
00071         void applyGatingControl();
00072         
00073         ImageSequence* theSequence;
00074         void load_sequence(char *fname, int occluder_freq, int occluder_width, const char* occluder_file);
00075 };
00076 #endif //INPUTMULTIPLEFEATUREPLANE_H_INCLUDED
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines