aboutsummaryrefslogtreecommitdiff
path: root/include/HyperNeat/Innovation.hpp
blob: ac618e5f251c1e8d75f7d9b172f09e0eb962f079 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef __HYPERNEAT_INNOVATION_HPP__
#define __HYPERNEAT_INNOVATION_HPP__

#include <Hyperneat/Utils/Size.hpp>
#include <Hyperneat/Utils/NodeTypes.hpp>

namespace hyperneat
{
    class Innovation
    {
    public:
        Innovation() = default;
        Innovation(size_t number, size_t source, size_t target, double depth, NodeType nodeType);

        bool operator== (const Innovation& other) const;

        size_t   _number   = 0;
        size_t   _source   = 0;
        size_t   _target   = 0;
        double   _depth    = 0.0;
        NodeType _nodeType = NodeType::NULL_TYPE;
    };
}

#endif