DNA-sequences / include / variant.h
variant.h
Raw
#ifndef VARIANT_H  // voorkomt dat dit bestand meerdere keren
#define VARIANT_H  // ge-include wordt

#include <string>

class Variant {
    public:
        // Default constructor
        Variant(int const start, int const eind);

        // Copy constructor voor variant
        Variant(Variant const &var);

        // Destructor
        virtual ~Variant() = 0;

        // Maakt de variant van de waardes en geeft een pointer ernaar terug
        static Variant* read(int const start, int const eind, std::string const type, std::string const seq);

        // Leest de waardes in voor een variant en
        // geeft een pointer naar de variant terug
        static Variant* read();

        // Getter voor start
        int get_start() const;

        // Getter voor eind
        int get_eind() const;

        // Virtual getter voor inserted/seq
        virtual std::string get_inserted() const;

        // Virtual getter voor type
        virtual std::string get_type() const;

        // Schrijft de waardes van de variant weg
        void write() const;

    private:
        // Begin van de toepassing van de variant
        int const start;

        // Einde van de toepassing van de variant
        int const eind;
};

#endif