1 #ifndef PENCILS_H_WATCH 2 #define PENCILS_H_WATCH 7 #include "iterators.hpp" 17 const size_t drawing_layer,
22 template <
class Pencil>
25 template <
class Pencil>
29 bool working()
const {
return (pos.position() != end);};
54 template <
class Pencil>
55 void paint_slice( Pencil&);
63 typedef std::unique_ptr<pencil> ref;
68 void init_params(
const STD_TR1::shared_ptr<const loadable_Object>& o)
76 const std::string& name()
const {
return name_();};
80 return should_draw_( point_layer, drawing_layer );};
84 return number_of_drawing_layers_();};
86 template <
class pencil_impl>
87 static std::unique_ptr<pencil> get_pencil(
const pencil_impl& p);
91 virtual void init_params_(
const STD_TR1::shared_ptr<const loadable_Object>& o ) = 0;
94 virtual const std::string& name_()
const = 0;
96 virtual bool should_draw_(
int point_layer,
97 int drawing_layer)
const = 0;
99 virtual size_t number_of_drawing_layers_()
const = 0;
137 template <
class pencil_impl>
150 void init_params_(
const STD_TR1::shared_ptr<const loadable_Object>& o ){
155 bool should_draw_(
int point_layer,
int drawing_layer)
const 157 return pen.should_draw( point_layer, drawing_layer);
160 size_t number_of_drawing_layers_()
const 162 return pen.number_of_drawing_layers();
165 const std::string& name_()
const {
return pen.name();};
173 template <
class pencil_impl>
174 std::unique_ptr<pencil> pencil::get_pencil(
const pencil_impl& p){
Definition: points.hpp:43
Definition: pencils.hpp:61
bool should_draw(int point_layer, int drawing_layer) const
should I draw a point on layer point_layer when drawing drawing_layer?
Definition: pencils.hpp:79
Definitions of abstract Rectangle base class.
Definition: iterators.hpp:13
Class to contain wave-function image data.
Definition: generate_wavefunction.hpp:25
void color_one_slice(const Pencil &)
paint current slice
Helper class to draw images efficiently.
Definition: pencils.hpp:13
bool working() const
are we finished?
Definition: pencils.hpp:29
size_t number_of_drawing_layers() const
how many drawing layers are there?
Definition: pencils.hpp:83
void coloring(Pencil &)
paint image as long as pen is valid
const geometry_const_Iterator current() const
get current slice
Definition: pencils.hpp:32
An abstract base class supporting xml_file_reading of input parameters.
Definition: input_file.hpp:79
void forward_to_specific_slice(const geometry_const_Iterator &)
forward to slice specified by pos
Definition: pencils.cpp:18
pencil_impl is the base class for all pencils
Definition: pencils.hpp:138