#ifndef NODE_H #define NODE_H ///////////////////////////////////////////////////////////////////// // node.h -- Abstract node and its Concrete derivatives // // These are the products. // // - These nodes are over-simplified. They do no real // // computation, nor will they be connected with other // // nodes. // // - Their purpose is simply to show how an abstract // // factory pattern could be applied to the construct- // // tion of a neural network. // // // // Jim Fawcett, CSE776 - Design Patterns, Summer 2004 // ///////////////////////////////////////////////////////////////////// class abstractNode { public: virtual void compute() = 0; }; class inputNode : public abstractNode { public: virtual void compute(); }; class hiddenNode : public abstractNode { public: virtual void compute(); }; class outputNode : public abstractNode { public: virtual void compute(); }; #endif