Public Member Functions | |
| Loop (double &_coord, G4String s) | |
| void | start () |
| bool | next () |
Private Attributes | |
| double & | coord |
| std::vector< double > | value |
| unsigned | index |
| BLCMDfieldntuple::Loop::Loop | ( | double & | _coord, | |
| G4String | s | |||
| ) |
References coord, BLCommand::getList(), index, BLCommand::printError(), and value.
00191 : coord(_coord) 00192 { 00193 value = getList(s,","); 00194 if(value.size() == 3) { 00195 double a = value[0]; 00196 double b = value[1]; 00197 double c = value[2]; 00198 value.clear(); 00199 if(c > 0.0 && b >= a) { 00200 for(double v=a; v<=b; v+= c) 00201 value.push_back(v); 00202 } 00203 } else { 00204 value = getList(s,":"); 00205 } 00206 if(value.size() == 0) { 00207 printError("Invalid coordinate loop."); 00208 value.push_back(0.0); 00209 } 00210 index = 0; 00211 coord = value[0]; 00212 }
| void BLCMDfieldntuple::Loop::start | ( | ) | [inline] |
| bool BLCMDfieldntuple::Loop::next | ( | ) | [inline] |
double& BLCMDfieldntuple::Loop::coord [private] |
std::vector<double> BLCMDfieldntuple::Loop::value [private] |
unsigned BLCMDfieldntuple::Loop::index [private] |