1 #ifndef VTESTBED_IGES_GRAPHICS_HH 2 #define VTESTBED_IGES_GRAPHICS_HH 11 #include <vtestbed/iges/directory_entry.hh> 12 #include <vtestbed/iges/section.hh> 13 #include <vtestbed/iges/string.hh> 14 #include <vtestbed/iges/timestamp.hh> 15 #include <vtestbed/iges/types.hh> 16 #include <vtestbed/iges/unit.hh> 17 #include <vtestbed/iges/entity.hh> 34 typedef timestamp::time_point time_point;
39 char _parameter_delimiter =
',';
40 char _record_delimiter =
';';
41 string _senderproduct, _receiverproduct, _filename, _software, _preprocessor;
47 Integer _maxlineweightgradations{1};
48 Real _scale{1}, _lineweight{1}, _minresolution{0}, _maxcoord{0};
49 Unit _unit = Unit::Inches;
50 string _unitname{
"IN"}, _author, _organisation;
52 Integer _version{3}, _draft{0};
71 inline const std::string& prologue()
const noexcept {
return this->_prologue; }
72 inline const std::string& author()
const noexcept {
return this->_author; }
73 inline const std::string& organisation()
const {
return this->_organisation; }
74 inline const time_point& created()
const noexcept {
return this->_created; }
75 inline const time_point& modified()
const noexcept {
return this->_modified; }
76 inline const std::string& real_filename()
const {
return this->_real_filename; }
78 inline void unit(Unit rhs) { this->unit(rhs, unit_name(rhs)); }
81 unit(Unit rhs,
const string& name) {
83 this->_unitname = name;
86 inline void max_coordinate(Real rhs) { this->_maxcoord = rhs; }
87 inline void prologue(
const std::string& rhs) { this->_prologue = rhs; }
88 inline void created(
const timestamp& rhs) { this->_created = rhs; }
89 inline void modified(
const timestamp& rhs) { this->_modified = rhs; }
90 inline void real_filename(
const std::string& rhs) { this->_real_filename = rhs; }
96 this->_entities.emplace_back(std::forward<entity_ptr>(ptr));
101 this->_entities.push_back(ptr);
125 rhs.read(in);
return in;
130 rhs.write(out);
return out;
137 #endif // vim:filetype=cpp