LibreCAD
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lc::builder::LinePatternBuilder Class Reference

#include <linepattern.h>

Public Member Functions

 LinePatternBuilder ()
 
virtual ~LinePatternBuilder ()
 
const std::string & name () const
 
const std::string & description () const
 
const std::vector< double > & path () const
 
LinePatternBuildersetName (const std::string &name)
 
LinePatternBuildersetDescription (const std::string &description)
 
LinePatternBuildersetPath (const std::vector< double > &path)
 
LinePatternBuilderaddElement (double element)
 
bool checkValues ()
 
DxfLinePatternByValue_CSPtr build ()
 

Private Attributes

std::string _name
 
std::string _description
 
std::vector< double > _path
 

Detailed Description

Definition at line 13 of file linepattern.h.

Constructor & Destructor Documentation

LinePatternBuilder::LinePatternBuilder ( )

Definition at line 8 of file linepattern.cpp.

8  :
9  _name(),
10  _description() {
11 }
LinePatternBuilder::~LinePatternBuilder ( )
virtual

Definition at line 13 of file linepattern.cpp.

13  {
14 
15 }

Member Function Documentation

LinePatternBuilder * LinePatternBuilder::addElement ( double  element)

Definition at line 59 of file linepattern.cpp.

59  {
60  _path.push_back(element);
61 
62  return this;
63 }
std::vector< double > _path
Definition: linepattern.h:34
DxfLinePatternByValue_CSPtr LinePatternBuilder::build ( )

Definition at line 51 of file linepattern.cpp.

51  {
52  if(!checkValues()) {
53  throw "Missing values";
54  }
55 
56  return DxfLinePatternByValue_CSPtr(new DxfLinePatternByValue(*this));
57 }
bool LinePatternBuilder::checkValues ( )

Definition at line 47 of file linepattern.cpp.

47  {
48  return _name != "";
49 }
const std::string & LinePatternBuilder::description ( ) const

Definition at line 21 of file linepattern.cpp.

21  {
22  return _description;
23 }
const std::string & LinePatternBuilder::name ( ) const

Definition at line 17 of file linepattern.cpp.

17  {
18  return _name;
19 }
const std::vector< double > & LinePatternBuilder::path ( ) const

Definition at line 25 of file linepattern.cpp.

25  {
26  return _path;
27 }
std::vector< double > _path
Definition: linepattern.h:34
LinePatternBuilder * LinePatternBuilder::setDescription ( const std::string &  description)

Definition at line 35 of file linepattern.cpp.

35  {
37 
38  return this;
39 }
const std::string & description() const
Definition: linepattern.cpp:21
LinePatternBuilder * LinePatternBuilder::setName ( const std::string &  name)

Definition at line 29 of file linepattern.cpp.

29  {
30  _name = name;
31 
32  return this;
33 }
const std::string & name() const
Definition: linepattern.cpp:17
LinePatternBuilder * LinePatternBuilder::setPath ( const std::vector< double > &  path)

Definition at line 41 of file linepattern.cpp.

41  {
42  _path = path;
43 
44  return this;
45 }
const std::vector< double > & path() const
Definition: linepattern.cpp:25
std::vector< double > _path
Definition: linepattern.h:34

Member Data Documentation

std::string lc::builder::LinePatternBuilder::_description
private

Definition at line 33 of file linepattern.h.

std::string lc::builder::LinePatternBuilder::_name
private

Definition at line 32 of file linepattern.h.

std::vector<double> lc::builder::LinePatternBuilder::_path
private

Definition at line 34 of file linepattern.h.


The documentation for this class was generated from the following files: