#ifndef MODEL_VIEW_H
#define MODEL_VIEW_H

#ifndef OWNER_H
#include "Owner.h"
#endif

namespace MM
{
class Model;

class Model_view
{
public:
//    Connections <Model_view>    connections_;

    virtual Model_view *clone (Model &model, const char * name) const =0;
    virtual                 ~Model_view() {}

    virtual bool           is_on () const =0;

    virtual Model &         model () =0;

    virtual void            fit_to_screen() =0;
    virtual void            flush_camera () =0;
    virtual void            set_level_of_details (int lod) =0;
    virtual void            set_focus () =0;
    virtual void            erase();

    virtual void            renew () =0;

    //virtual int             atom_count () const =0;
    //virtual Visual_atom &   atom (int i) = 0;
};

}//MM

#endif //MODEL_VIEW_H
