#ifndef MOLECULAR_SEQUENCE_H
#define MOLECULAR_SEQUENCE_H

#ifndef MODEL_EVENT_H
#include "Model_event.h"
#endif

namespace MM
{
class Molecular_type;
class Model;
class Text;

class Molecular_sequence 
{
public:
    static Molecular_sequence *create (Model & model);

    virtual                        ~Molecular_sequence () {}
    virtual void                    reset (Model_event::Hint) =0;

    virtual Molecular_type &        type  (int i) =0;
    virtual Molecular_type const &  type  (int i) const =0;
    virtual int                     count () const =0;
};

}//MM

#endif //MOLECULAR_SEQUENCE_H
