Line data Source code
1 : 2 : /* 3 : * ALMA - Atacama Large Millimeter Array 4 : * (c) European Southern Observatory, 2002 5 : * (c) Associated Universities Inc., 2002 6 : * Copyright by ESO (in the framework of the ALMA collaboration), 7 : * Copyright by AUI (in the framework of the ALMA collaboration), 8 : * All rights reserved. 9 : * 10 : * This library is free software; you can redistribute it and/or 11 : * modify it under the terms of the GNU Lesser General Public 12 : * License as published by the Free software Foundation; either 13 : * version 2.1 of the License, or (at your option) any later version. 14 : * 15 : * This library is distributed in the hope that it will be useful, 16 : * but WITHOUT ANY WARRANTY, without even the implied warranty of 17 : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 18 : * Lesser General Public License for more details. 19 : * 20 : * You should have received a copy of the GNU Lesser General Public 21 : * License along with this library; if not, write to the Free Software 22 : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 23 : * MA 02111-1307 USA 24 : * 25 : * ///////////////////////////////////////////////////////////////// 26 : * // WARNING! DO NOT MODIFY THIS FILE! // 27 : * // --------------------------------------------------------- // 28 : * // | This is generated code! Do not modify this file. | // 29 : * // | Any changes will be lost when the file is re-generated. | // 30 : * // --------------------------------------------------------- // 31 : * ///////////////////////////////////////////////////////////////// 32 : * 33 : * File CBaselineReferenceCode.cpp 34 : */ 35 : #include <sstream> 36 : #include <alma/Enumerations/CBaselineReferenceCode.h> 37 : #include <string> 38 : using namespace std; 39 : 40 0 : int CBaselineReferenceCode::version() { 41 0 : return BaselineReferenceCodeMod::version; 42 : } 43 : 44 0 : string CBaselineReferenceCode::revision () { 45 0 : return BaselineReferenceCodeMod::revision; 46 : } 47 : 48 0 : unsigned int CBaselineReferenceCode::size() { 49 0 : return 28; 50 : } 51 : 52 : 53 : const std::string& CBaselineReferenceCode::sJ2000 = "J2000"; 54 : 55 : const std::string& CBaselineReferenceCode::sB1950 = "B1950"; 56 : 57 : const std::string& CBaselineReferenceCode::sGALACTIC = "GALACTIC"; 58 : 59 : const std::string& CBaselineReferenceCode::sSUPERGAL = "SUPERGAL"; 60 : 61 : const std::string& CBaselineReferenceCode::sECLIPTIC = "ECLIPTIC"; 62 : 63 : const std::string& CBaselineReferenceCode::sJMEAN = "JMEAN"; 64 : 65 : const std::string& CBaselineReferenceCode::sJTRUE = "JTRUE"; 66 : 67 : const std::string& CBaselineReferenceCode::sAPP = "APP"; 68 : 69 : const std::string& CBaselineReferenceCode::sBMEAN = "BMEAN"; 70 : 71 : const std::string& CBaselineReferenceCode::sBTRUE = "BTRUE"; 72 : 73 : const std::string& CBaselineReferenceCode::sJNAT = "JNAT"; 74 : 75 : const std::string& CBaselineReferenceCode::sMECLIPTIC = "MECLIPTIC"; 76 : 77 : const std::string& CBaselineReferenceCode::sTECLIPTIC = "TECLIPTIC"; 78 : 79 : const std::string& CBaselineReferenceCode::sTOPO = "TOPO"; 80 : 81 : const std::string& CBaselineReferenceCode::sMERCURY = "MERCURY"; 82 : 83 : const std::string& CBaselineReferenceCode::sVENUS = "VENUS"; 84 : 85 : const std::string& CBaselineReferenceCode::sMARS = "MARS"; 86 : 87 : const std::string& CBaselineReferenceCode::sJUPITER = "JUPITER"; 88 : 89 : const std::string& CBaselineReferenceCode::sSATURN = "SATURN"; 90 : 91 : const std::string& CBaselineReferenceCode::sNEPTUN = "NEPTUN"; 92 : 93 : const std::string& CBaselineReferenceCode::sSUN = "SUN"; 94 : 95 : const std::string& CBaselineReferenceCode::sMOON = "MOON"; 96 : 97 : const std::string& CBaselineReferenceCode::sHADEC = "HADEC"; 98 : 99 : const std::string& CBaselineReferenceCode::sAZEL = "AZEL"; 100 : 101 : const std::string& CBaselineReferenceCode::sAZELGEO = "AZELGEO"; 102 : 103 : const std::string& CBaselineReferenceCode::sAZELSW = "AZELSW"; 104 : 105 : const std::string& CBaselineReferenceCode::sAZELNE = "AZELNE"; 106 : 107 : const std::string& CBaselineReferenceCode::sITRF = "ITRF"; 108 : 109 0 : const std::vector<std::string> CBaselineReferenceCode::names() { 110 0 : std::vector<std::string> enumSet; 111 : 112 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sJ2000); 113 : 114 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sB1950); 115 : 116 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sGALACTIC); 117 : 118 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sSUPERGAL); 119 : 120 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sECLIPTIC); 121 : 122 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sJMEAN); 123 : 124 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sJTRUE); 125 : 126 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sAPP); 127 : 128 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sBMEAN); 129 : 130 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sBTRUE); 131 : 132 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sJNAT); 133 : 134 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sMECLIPTIC); 135 : 136 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sTECLIPTIC); 137 : 138 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sTOPO); 139 : 140 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sMERCURY); 141 : 142 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sVENUS); 143 : 144 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sMARS); 145 : 146 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sJUPITER); 147 : 148 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sSATURN); 149 : 150 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sNEPTUN); 151 : 152 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sSUN); 153 : 154 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sMOON); 155 : 156 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sHADEC); 157 : 158 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sAZEL); 159 : 160 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sAZELGEO); 161 : 162 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sAZELSW); 163 : 164 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sAZELNE); 165 : 166 0 : enumSet.insert(enumSet.end(), CBaselineReferenceCode::sITRF); 167 : 168 0 : return enumSet; 169 : } 170 : 171 0 : std::string CBaselineReferenceCode::name(const BaselineReferenceCodeMod::BaselineReferenceCode& f) { 172 0 : switch (f) { 173 : 174 0 : case BaselineReferenceCodeMod::J2000: 175 0 : return CBaselineReferenceCode::sJ2000; 176 : 177 0 : case BaselineReferenceCodeMod::B1950: 178 0 : return CBaselineReferenceCode::sB1950; 179 : 180 0 : case BaselineReferenceCodeMod::GALACTIC: 181 0 : return CBaselineReferenceCode::sGALACTIC; 182 : 183 0 : case BaselineReferenceCodeMod::SUPERGAL: 184 0 : return CBaselineReferenceCode::sSUPERGAL; 185 : 186 0 : case BaselineReferenceCodeMod::ECLIPTIC: 187 0 : return CBaselineReferenceCode::sECLIPTIC; 188 : 189 0 : case BaselineReferenceCodeMod::JMEAN: 190 0 : return CBaselineReferenceCode::sJMEAN; 191 : 192 0 : case BaselineReferenceCodeMod::JTRUE: 193 0 : return CBaselineReferenceCode::sJTRUE; 194 : 195 0 : case BaselineReferenceCodeMod::APP: 196 0 : return CBaselineReferenceCode::sAPP; 197 : 198 0 : case BaselineReferenceCodeMod::BMEAN: 199 0 : return CBaselineReferenceCode::sBMEAN; 200 : 201 0 : case BaselineReferenceCodeMod::BTRUE: 202 0 : return CBaselineReferenceCode::sBTRUE; 203 : 204 0 : case BaselineReferenceCodeMod::JNAT: 205 0 : return CBaselineReferenceCode::sJNAT; 206 : 207 0 : case BaselineReferenceCodeMod::MECLIPTIC: 208 0 : return CBaselineReferenceCode::sMECLIPTIC; 209 : 210 0 : case BaselineReferenceCodeMod::TECLIPTIC: 211 0 : return CBaselineReferenceCode::sTECLIPTIC; 212 : 213 0 : case BaselineReferenceCodeMod::TOPO: 214 0 : return CBaselineReferenceCode::sTOPO; 215 : 216 0 : case BaselineReferenceCodeMod::MERCURY: 217 0 : return CBaselineReferenceCode::sMERCURY; 218 : 219 0 : case BaselineReferenceCodeMod::VENUS: 220 0 : return CBaselineReferenceCode::sVENUS; 221 : 222 0 : case BaselineReferenceCodeMod::MARS: 223 0 : return CBaselineReferenceCode::sMARS; 224 : 225 0 : case BaselineReferenceCodeMod::JUPITER: 226 0 : return CBaselineReferenceCode::sJUPITER; 227 : 228 0 : case BaselineReferenceCodeMod::SATURN: 229 0 : return CBaselineReferenceCode::sSATURN; 230 : 231 0 : case BaselineReferenceCodeMod::NEPTUN: 232 0 : return CBaselineReferenceCode::sNEPTUN; 233 : 234 0 : case BaselineReferenceCodeMod::SUN: 235 0 : return CBaselineReferenceCode::sSUN; 236 : 237 0 : case BaselineReferenceCodeMod::MOON: 238 0 : return CBaselineReferenceCode::sMOON; 239 : 240 0 : case BaselineReferenceCodeMod::HADEC: 241 0 : return CBaselineReferenceCode::sHADEC; 242 : 243 0 : case BaselineReferenceCodeMod::AZEL: 244 0 : return CBaselineReferenceCode::sAZEL; 245 : 246 0 : case BaselineReferenceCodeMod::AZELGEO: 247 0 : return CBaselineReferenceCode::sAZELGEO; 248 : 249 0 : case BaselineReferenceCodeMod::AZELSW: 250 0 : return CBaselineReferenceCode::sAZELSW; 251 : 252 0 : case BaselineReferenceCodeMod::AZELNE: 253 0 : return CBaselineReferenceCode::sAZELNE; 254 : 255 0 : case BaselineReferenceCodeMod::ITRF: 256 0 : return CBaselineReferenceCode::sITRF; 257 : 258 : } 259 : // Impossible siutation but....who knows with C++ enums 260 0 : throw badInt((int) f); 261 : } 262 : 263 0 : BaselineReferenceCodeMod::BaselineReferenceCode CBaselineReferenceCode::newBaselineReferenceCode(const std::string& name) { 264 : 265 0 : if (name == CBaselineReferenceCode::sJ2000) { 266 0 : return BaselineReferenceCodeMod::J2000; 267 : } 268 : 269 0 : if (name == CBaselineReferenceCode::sB1950) { 270 0 : return BaselineReferenceCodeMod::B1950; 271 : } 272 : 273 0 : if (name == CBaselineReferenceCode::sGALACTIC) { 274 0 : return BaselineReferenceCodeMod::GALACTIC; 275 : } 276 : 277 0 : if (name == CBaselineReferenceCode::sSUPERGAL) { 278 0 : return BaselineReferenceCodeMod::SUPERGAL; 279 : } 280 : 281 0 : if (name == CBaselineReferenceCode::sECLIPTIC) { 282 0 : return BaselineReferenceCodeMod::ECLIPTIC; 283 : } 284 : 285 0 : if (name == CBaselineReferenceCode::sJMEAN) { 286 0 : return BaselineReferenceCodeMod::JMEAN; 287 : } 288 : 289 0 : if (name == CBaselineReferenceCode::sJTRUE) { 290 0 : return BaselineReferenceCodeMod::JTRUE; 291 : } 292 : 293 0 : if (name == CBaselineReferenceCode::sAPP) { 294 0 : return BaselineReferenceCodeMod::APP; 295 : } 296 : 297 0 : if (name == CBaselineReferenceCode::sBMEAN) { 298 0 : return BaselineReferenceCodeMod::BMEAN; 299 : } 300 : 301 0 : if (name == CBaselineReferenceCode::sBTRUE) { 302 0 : return BaselineReferenceCodeMod::BTRUE; 303 : } 304 : 305 0 : if (name == CBaselineReferenceCode::sJNAT) { 306 0 : return BaselineReferenceCodeMod::JNAT; 307 : } 308 : 309 0 : if (name == CBaselineReferenceCode::sMECLIPTIC) { 310 0 : return BaselineReferenceCodeMod::MECLIPTIC; 311 : } 312 : 313 0 : if (name == CBaselineReferenceCode::sTECLIPTIC) { 314 0 : return BaselineReferenceCodeMod::TECLIPTIC; 315 : } 316 : 317 0 : if (name == CBaselineReferenceCode::sTOPO) { 318 0 : return BaselineReferenceCodeMod::TOPO; 319 : } 320 : 321 0 : if (name == CBaselineReferenceCode::sMERCURY) { 322 0 : return BaselineReferenceCodeMod::MERCURY; 323 : } 324 : 325 0 : if (name == CBaselineReferenceCode::sVENUS) { 326 0 : return BaselineReferenceCodeMod::VENUS; 327 : } 328 : 329 0 : if (name == CBaselineReferenceCode::sMARS) { 330 0 : return BaselineReferenceCodeMod::MARS; 331 : } 332 : 333 0 : if (name == CBaselineReferenceCode::sJUPITER) { 334 0 : return BaselineReferenceCodeMod::JUPITER; 335 : } 336 : 337 0 : if (name == CBaselineReferenceCode::sSATURN) { 338 0 : return BaselineReferenceCodeMod::SATURN; 339 : } 340 : 341 0 : if (name == CBaselineReferenceCode::sNEPTUN) { 342 0 : return BaselineReferenceCodeMod::NEPTUN; 343 : } 344 : 345 0 : if (name == CBaselineReferenceCode::sSUN) { 346 0 : return BaselineReferenceCodeMod::SUN; 347 : } 348 : 349 0 : if (name == CBaselineReferenceCode::sMOON) { 350 0 : return BaselineReferenceCodeMod::MOON; 351 : } 352 : 353 0 : if (name == CBaselineReferenceCode::sHADEC) { 354 0 : return BaselineReferenceCodeMod::HADEC; 355 : } 356 : 357 0 : if (name == CBaselineReferenceCode::sAZEL) { 358 0 : return BaselineReferenceCodeMod::AZEL; 359 : } 360 : 361 0 : if (name == CBaselineReferenceCode::sAZELGEO) { 362 0 : return BaselineReferenceCodeMod::AZELGEO; 363 : } 364 : 365 0 : if (name == CBaselineReferenceCode::sAZELSW) { 366 0 : return BaselineReferenceCodeMod::AZELSW; 367 : } 368 : 369 0 : if (name == CBaselineReferenceCode::sAZELNE) { 370 0 : return BaselineReferenceCodeMod::AZELNE; 371 : } 372 : 373 0 : if (name == CBaselineReferenceCode::sITRF) { 374 0 : return BaselineReferenceCodeMod::ITRF; 375 : } 376 : 377 0 : throw badString(name); 378 : } 379 : 380 0 : BaselineReferenceCodeMod::BaselineReferenceCode CBaselineReferenceCode::literal(const std::string& name) { 381 : 382 0 : if (name == CBaselineReferenceCode::sJ2000) { 383 0 : return BaselineReferenceCodeMod::J2000; 384 : } 385 : 386 0 : if (name == CBaselineReferenceCode::sB1950) { 387 0 : return BaselineReferenceCodeMod::B1950; 388 : } 389 : 390 0 : if (name == CBaselineReferenceCode::sGALACTIC) { 391 0 : return BaselineReferenceCodeMod::GALACTIC; 392 : } 393 : 394 0 : if (name == CBaselineReferenceCode::sSUPERGAL) { 395 0 : return BaselineReferenceCodeMod::SUPERGAL; 396 : } 397 : 398 0 : if (name == CBaselineReferenceCode::sECLIPTIC) { 399 0 : return BaselineReferenceCodeMod::ECLIPTIC; 400 : } 401 : 402 0 : if (name == CBaselineReferenceCode::sJMEAN) { 403 0 : return BaselineReferenceCodeMod::JMEAN; 404 : } 405 : 406 0 : if (name == CBaselineReferenceCode::sJTRUE) { 407 0 : return BaselineReferenceCodeMod::JTRUE; 408 : } 409 : 410 0 : if (name == CBaselineReferenceCode::sAPP) { 411 0 : return BaselineReferenceCodeMod::APP; 412 : } 413 : 414 0 : if (name == CBaselineReferenceCode::sBMEAN) { 415 0 : return BaselineReferenceCodeMod::BMEAN; 416 : } 417 : 418 0 : if (name == CBaselineReferenceCode::sBTRUE) { 419 0 : return BaselineReferenceCodeMod::BTRUE; 420 : } 421 : 422 0 : if (name == CBaselineReferenceCode::sJNAT) { 423 0 : return BaselineReferenceCodeMod::JNAT; 424 : } 425 : 426 0 : if (name == CBaselineReferenceCode::sMECLIPTIC) { 427 0 : return BaselineReferenceCodeMod::MECLIPTIC; 428 : } 429 : 430 0 : if (name == CBaselineReferenceCode::sTECLIPTIC) { 431 0 : return BaselineReferenceCodeMod::TECLIPTIC; 432 : } 433 : 434 0 : if (name == CBaselineReferenceCode::sTOPO) { 435 0 : return BaselineReferenceCodeMod::TOPO; 436 : } 437 : 438 0 : if (name == CBaselineReferenceCode::sMERCURY) { 439 0 : return BaselineReferenceCodeMod::MERCURY; 440 : } 441 : 442 0 : if (name == CBaselineReferenceCode::sVENUS) { 443 0 : return BaselineReferenceCodeMod::VENUS; 444 : } 445 : 446 0 : if (name == CBaselineReferenceCode::sMARS) { 447 0 : return BaselineReferenceCodeMod::MARS; 448 : } 449 : 450 0 : if (name == CBaselineReferenceCode::sJUPITER) { 451 0 : return BaselineReferenceCodeMod::JUPITER; 452 : } 453 : 454 0 : if (name == CBaselineReferenceCode::sSATURN) { 455 0 : return BaselineReferenceCodeMod::SATURN; 456 : } 457 : 458 0 : if (name == CBaselineReferenceCode::sNEPTUN) { 459 0 : return BaselineReferenceCodeMod::NEPTUN; 460 : } 461 : 462 0 : if (name == CBaselineReferenceCode::sSUN) { 463 0 : return BaselineReferenceCodeMod::SUN; 464 : } 465 : 466 0 : if (name == CBaselineReferenceCode::sMOON) { 467 0 : return BaselineReferenceCodeMod::MOON; 468 : } 469 : 470 0 : if (name == CBaselineReferenceCode::sHADEC) { 471 0 : return BaselineReferenceCodeMod::HADEC; 472 : } 473 : 474 0 : if (name == CBaselineReferenceCode::sAZEL) { 475 0 : return BaselineReferenceCodeMod::AZEL; 476 : } 477 : 478 0 : if (name == CBaselineReferenceCode::sAZELGEO) { 479 0 : return BaselineReferenceCodeMod::AZELGEO; 480 : } 481 : 482 0 : if (name == CBaselineReferenceCode::sAZELSW) { 483 0 : return BaselineReferenceCodeMod::AZELSW; 484 : } 485 : 486 0 : if (name == CBaselineReferenceCode::sAZELNE) { 487 0 : return BaselineReferenceCodeMod::AZELNE; 488 : } 489 : 490 0 : if (name == CBaselineReferenceCode::sITRF) { 491 0 : return BaselineReferenceCodeMod::ITRF; 492 : } 493 : 494 0 : throw badString(name); 495 : } 496 : 497 0 : BaselineReferenceCodeMod::BaselineReferenceCode CBaselineReferenceCode::from_int(unsigned int i) { 498 0 : vector<string> names_ = names(); 499 0 : if (i >= names_.size()) throw badInt(i); 500 0 : return newBaselineReferenceCode(names_.at(i)); 501 : } 502 : 503 0 : string CBaselineReferenceCode::badString(const string& name) { 504 0 : return "'"+name+"' does not correspond to any literal in the enumeration 'BaselineReferenceCode'."; 505 : } 506 : 507 0 : string CBaselineReferenceCode::badInt(unsigned int i) { 508 0 : ostringstream oss ; 509 0 : oss << "'" << i << "' is out of range for the enumeration 'BaselineReferenceCode'."; 510 0 : return oss.str(); 511 : } 512 : 513 : namespace BaselineReferenceCodeMod { 514 0 : std::ostream & operator << ( std::ostream & out, const BaselineReferenceCode& value) { 515 0 : out << CBaselineReferenceCode::name(value); 516 0 : return out; 517 : } 518 : 519 0 : std::istream & operator >> ( std::istream & in , BaselineReferenceCode& value ) { 520 0 : in.clear(); 521 0 : string s ; 522 0 : in >> s; 523 : try { 524 0 : value = CBaselineReferenceCode::literal(s); 525 : } 526 0 : catch (string & m) { 527 0 : in.setstate(ios::failbit); 528 : } 529 0 : return in; 530 : } 531 : } 532 :