Geant4 Cross Reference |
1 // Copyright (C) 2010, Guy Barrand. All rights reserved. 2 // See the file tools.license for terms. 3 4 #ifndef tools_sg_rep 5 #define tools_sg_rep 6 7 namespace tools { 8 namespace sg { 9 10 class rep_bin1D { 11 public: 12 rep_bin1D() 13 :m_x_min(0),m_x_max(0) 14 ,m_v_min(0),m_val(0) 15 ,m_ratio(0) 16 //,fSeparator(0) 17 {} 18 19 rep_bin1D(float aXmin,float aXmax,float aVmin,float aVal) 20 :m_x_min(aXmin),m_x_max(aXmax) 21 ,m_v_min(aVmin),m_val(aVal) 22 ,m_ratio(0) 23 //,fSeparator(0) 24 {} 25 public: 26 rep_bin1D(const rep_bin1D& a_from) 27 :m_x_min(a_from.m_x_min),m_x_max(a_from.m_x_max) 28 ,m_v_min(a_from.m_v_min),m_val(a_from.m_val) 29 ,m_ratio(a_from.m_ratio) 30 //,fSeparator(0) 31 {} 32 rep_bin1D& operator=(const rep_bin1D& a_from){ 33 m_x_min = a_from.m_x_min; 34 m_x_max = a_from.m_x_max; 35 m_v_min = a_from.m_v_min; 36 m_val = a_from.m_val; 37 m_ratio = a_from.m_ratio; 38 return *this; 39 } 40 public: 41 float m_x_min; 42 float m_x_max; 43 float m_v_min; 44 float m_val; 45 float m_ratio; 46 //SoSeparator* fSeparator; 47 }; 48 49 class rep_bin2D { 50 public: 51 rep_bin2D() 52 :m_x_min(0),m_x_max(0) 53 ,m_y_min(0),m_y_max(0) 54 ,m_val(0),m_ratio(0) 55 ,fI(0),fJ(0){} 56 57 rep_bin2D(float aXmin,float aXmax, 58 float aYmin,float aYmax, 59 float aVal,int aI,int aJ) 60 :m_x_min(aXmin),m_x_max(aXmax) 61 ,m_y_min(aYmin),m_y_max(aYmax) 62 ,m_val(aVal) 63 ,m_ratio(0) 64 ,fI(aI),fJ(aJ) 65 {} 66 public: 67 float m_x_min; 68 float m_x_max; 69 float m_y_min; 70 float m_y_max; 71 float m_val; 72 float m_ratio; 73 int fI; 74 int fJ; 75 }; 76 77 class rep_top_face2D { 78 public: 79 rep_top_face2D() 80 :m_x_min(0),m_x_max(0) 81 ,m_y_min(0),m_y_max(0) 82 ,m_v1(0),m_v2(0),m_v3(0),m_v4(0) 83 ,m_ratio(0) 84 {} 85 86 rep_top_face2D(float a_xmin,float a_xmax, 87 float a_ymin,float a_ymax, 88 float a_v1,float a_v2,float a_v3,float a_v4) 89 :m_x_min(a_xmin),m_x_max(a_xmax) 90 ,m_y_min(a_ymin),m_y_max(a_ymax) 91 ,m_v1(a_v1),m_v2(a_v2),m_v3(a_v3),m_v4(a_v4) 92 ,m_ratio(0) 93 {} 94 95 rep_top_face2D(const rep_top_face2D& a_from) 96 :m_x_min(a_from.m_x_min),m_x_max(a_from.m_x_max) 97 ,m_y_min(a_from.m_y_min),m_y_max(a_from.m_y_max) 98 ,m_v1(a_from.m_v1),m_v2(a_from.m_v2),m_v3(a_from.m_v3),m_v4(a_from.m_v4) 99 ,m_ratio(a_from.m_ratio) 100 {} 101 102 rep_top_face2D& operator=(const rep_top_face2D& a_from){ 103 m_x_min = a_from.m_x_min; 104 m_x_max = a_from.m_x_max; 105 m_y_min = a_from.m_y_min; 106 m_y_max = a_from.m_y_max; 107 m_v1 = a_from.m_v1; 108 m_v2 = a_from.m_v2; 109 m_v3 = a_from.m_v3; 110 m_v4 = a_from.m_v4; 111 m_ratio = a_from.m_ratio; 112 return *this; 113 } 114 public: 115 float m_x_min; 116 float m_x_max; 117 float m_y_min; 118 float m_y_max; 119 float m_v1; 120 float m_v2; 121 float m_v3; 122 float m_v4; 123 float m_ratio; 124 }; 125 126 class rep_box { 127 public: 128 rep_box(float a_pos,float a_width,bool a_log) 129 :m_pos(a_pos),m_width(a_width),m_log(a_log){} 130 131 rep_box(const rep_box& a_from) 132 :m_pos(a_from.m_pos),m_width(a_from.m_width),m_log(a_from.m_log){} 133 134 rep_box& operator=(const rep_box& a_from) { 135 m_pos = a_from.m_pos; 136 m_width = a_from.m_width; 137 m_log = a_from.m_log; 138 return *this; 139 } 140 public: 141 float m_pos; 142 float m_width; 143 bool m_log; 144 }; 145 146 }} 147 148 #endif