File: layer.hpp

package info (click to toggle)
pcb2gcode 1.1.4-git20120902-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 1,400 kB
  • ctags: 358
  • sloc: sh: 10,116; cpp: 2,335; python: 53; makefile: 43
file content (36 lines) | stat: -rw-r--r-- 732 bytes parent folder | download | duplicates (3)
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
26
27
28
29
30
31
32
33
34
35
36

#ifndef LAYER_H
#define LAYER_H

#include <string>
using std::string;
#include <vector>
using std::vector;

#include <boost/noncopyable.hpp>

#include "coord.hpp"
#include "surface.hpp"
#include "mill.hpp"

class Layer : boost::noncopyable
{
public:
	Layer( const string& name, shared_ptr<Surface> surface, shared_ptr<RoutingMill> manufacturer, bool backside, bool mirror_absolute );
	
	vector< shared_ptr<icoords> > get_toolpaths();
	shared_ptr<RoutingMill> get_manufacturer();
	string get_name() { return name; };
	void add_mask( shared_ptr<Layer>);

private:
	string name;
	bool mirrored;
	bool mirror_absolute;
	shared_ptr<Surface> surface;
	shared_ptr<RoutingMill>    manufacturer;

	friend class Board;
};

#endif // LAYER_H