1 #ifndef VTESTBED_IGES_DIRECTORY_ENTRY_HH     2 #define VTESTBED_IGES_DIRECTORY_ENTRY_HH     6 #include <vtestbed/iges/types.hh>    33             typedef Integer* pointer;
    34             typedef const Integer* const_pointer;
    35             typedef pointer iterator;
    36             typedef const_pointer const_iterator;
    37             typedef size_t size_type;
    38             typedef Integer& reference;
    39             typedef const Integer& const_reference;
    43                     Integer _entitytype = 0;
    44                     mutable Integer _parameterdata = 0;
    45                     Integer _structure = 0;
    46                     Integer _linefontpattern = 0;
    49                     Integer _transformation_matrix = 0;
    50                     Integer _display_associativity = 0;
    51                     char _status[8] {
'0', 
'0', 
'0', 
'0', 
'0', 
'0', 
'0', 
'0'};
    52                     Integer _entitytype2 = 0;
    53                     Integer _lineweight = 0;
    55                     Integer _linecount = 0;
    57                     Integer _reserved1 = 0;
    58                     Integer _reserved2 = 0;
    59                     char _label[8] {
' ', 
' ', 
' ', 
' ', 
' ', 
' ', 
' ', 
' '};
    60                     Integer _subscript = 0;
    71             data() 
const noexcept {
    75             static constexpr 
inline size_type
    77                 return sizeof(_fields) / 
sizeof(Integer);
    86             begin() 
const noexcept {
    92                 return this->data() + this->size();
    96             end() 
const noexcept {
    97                 return this->data() + this->size();
   101             operator[](size_type i) noexcept {
   102                 return this->_fields[i];
   105             inline const_reference
   106             operator[](size_type i) 
const noexcept {
   107                 return this->_fields[i];
   111             type() 
const noexcept {
   112                 return this->_entitytype;
   116             type(Integer rhs) noexcept {
   117                 this->_entitytype = rhs;
   121             parameter_data(Integer number)
 const {
   122                 this->_parameterdata = number;
   126             sequence_number() 
const noexcept {
   127                 return 2*this->_parameterdata - 1;
   131             status(size_type i, 
char ch) {
   132                 this->_status[i] = ch;
   137                 this->status(3, b ? 
'3' : 
'0');
   152 #endif // vim:filetype=cpp