00001 00002 /* 00003 * ALMA - Atacama Large Millimeter Array 00004 * (c) European Southern Observatory, 2002 00005 * (c) Associated Universities Inc., 2002 00006 * Copyright by ESO (in the framework of the ALMA collaboration), 00007 * Copyright by AUI (in the framework of the ALMA collaboration), 00008 * All rights reserved. 00009 * 00010 * This library is free software; you can redistribute it and/or 00011 * modify it under the terms of the GNU Lesser General Public 00012 * License as published by the Free software Foundation; either 00013 * version 2.1 of the License, or (at your option) any later version. 00014 * 00015 * This library is distributed in the hope that it will be useful, 00016 * but WITHOUT ANY WARRANTY, without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 * Lesser General Public License for more details. 00019 * 00020 * You should have received a copy of the GNU Lesser General Public 00021 * License along with this library; if not, write to the Free Software 00022 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 00023 * MA 02111-1307 USA 00024 * 00025 * Warning! 00026 * -------------------------------------------------------------------- 00027 * | This is generated code! Do not modify this file. | 00028 * | If you do, all changes will be lost when the file is re-generated. | 00029 * -------------------------------------------------------------------- 00030 * 00031 * File Merger.h 00032 */ 00033 #ifndef Merger_CLASS 00034 #define Merger_CLASS 00035 #include <map> 00036 00037 #include "ASDM.h" 00038 00039 #include "SBSummaryTable.h" 00040 #include "SBSummaryRow.h" 00041 00042 #include "ConfigDescriptionTable.h" 00043 #include "ConfigDescriptionRow.h" 00044 00045 #include "FieldTable.h" 00046 #include "FieldRow.h" 00047 00048 #include "StateTable.h" 00049 #include "StateRow.h" 00050 00051 #include "AntennaTable.h" 00052 #include "AntennaRow.h" 00053 00054 #include "DataDescriptionTable.h" 00055 #include "DataDescriptionRow.h" 00056 00057 #include "SwitchCycleTable.h" 00058 #include "SwitchCycleRow.h" 00059 00060 #include "SourceTable.h" 00061 #include "SourceRow.h" 00062 00063 #include "FeedTable.h" 00064 #include "FeedRow.h" 00065 00066 #include "SpectralWindowTable.h" 00067 #include "SpectralWindowRow.h" 00068 00069 #include "FreqOffsetTable.h" 00070 #include "FreqOffsetRow.h" 00071 00072 #include "PolarizationTable.h" 00073 #include "PolarizationRow.h" 00074 00075 #include "ReceiverTable.h" 00076 #include "ReceiverRow.h" 00077 00078 #include "DopplerTable.h" 00079 #include "DopplerRow.h" 00080 00081 #include "ProcessorTable.h" 00082 #include "ProcessorRow.h" 00083 00084 #include "CorrelatorModeTable.h" 00085 #include "CorrelatorModeRow.h" 00086 00087 #include "CalDeviceTable.h" 00088 #include "CalDeviceRow.h" 00089 00090 #include "FlagCmdTable.h" 00091 #include "FlagCmdRow.h" 00092 00093 #include "FocusTable.h" 00094 #include "FocusRow.h" 00095 00096 #include "HistoryTable.h" 00097 #include "HistoryRow.h" 00098 00099 #include "ObservationTable.h" 00100 #include "ObservationRow.h" 00101 00102 #include "PointingTable.h" 00103 #include "PointingRow.h" 00104 00105 #include "SeeingTable.h" 00106 #include "SeeingRow.h" 00107 00108 #include "SysCalTable.h" 00109 #include "SysCalRow.h" 00110 00111 #include "TotalPowerTable.h" 00112 #include "TotalPowerRow.h" 00113 00114 #include "WeatherTable.h" 00115 #include "WeatherRow.h" 00116 00117 #include "WVMCalTable.h" 00118 #include "WVMCalRow.h" 00119 00120 #include "EphemerisTable.h" 00121 #include "EphemerisRow.h" 00122 00123 #include "ExecBlockTable.h" 00124 #include "ExecBlockRow.h" 00125 00126 #include "ScanTable.h" 00127 #include "ScanRow.h" 00128 00129 #include "SubscanTable.h" 00130 #include "SubscanRow.h" 00131 00132 #include "MainTable.h" 00133 #include "MainRow.h" 00134 00135 #include "FocusModelTable.h" 00136 #include "FocusModelRow.h" 00137 00138 #include "GainTrackingTable.h" 00139 #include "GainTrackingRow.h" 00140 00141 #include "PointingModelTable.h" 00142 #include "PointingModelRow.h" 00143 00144 #include "CalAmpliTable.h" 00145 #include "CalAmpliRow.h" 00146 00147 #include "CalDataTable.h" 00148 #include "CalDataRow.h" 00149 00150 #include "CalReductionTable.h" 00151 #include "CalReductionRow.h" 00152 00153 #include "CalPhaseTable.h" 00154 #include "CalPhaseRow.h" 00155 00156 #include "CalSeeingTable.h" 00157 #include "CalSeeingRow.h" 00158 00159 #include "CalPositionTable.h" 00160 #include "CalPositionRow.h" 00161 00162 #include "CalPointingTable.h" 00163 #include "CalPointingRow.h" 00164 00165 #include "CalPointingModelTable.h" 00166 #include "CalPointingModelRow.h" 00167 00168 #include "CalHolographyTable.h" 00169 #include "CalHolographyRow.h" 00170 00171 #include "CalAtmosphereTable.h" 00172 #include "CalAtmosphereRow.h" 00173 00174 #include "CalCurveTable.h" 00175 #include "CalCurveRow.h" 00176 00177 #include "StationTable.h" 00178 #include "StationRow.h" 00179 00180 #include "AlmaRadiometerTable.h" 00181 #include "AlmaRadiometerRow.h" 00182 00183 #include "SquareLawDetectorTable.h" 00184 #include "SquareLawDetectorRow.h" 00185 00186 #include "CalFocusTable.h" 00187 #include "CalFocusRow.h" 00188 00189 #include "CalDelayTable.h" 00190 #include "CalDelayRow.h" 00191 00192 #include "HolographyTable.h" 00193 #include "HolographyRow.h" 00194 00195 #include "CalBandpassTable.h" 00196 #include "CalBandpassRow.h" 00197 00198 #include "CalFluxTable.h" 00199 #include "CalFluxRow.h" 00200 00201 #include "CalFocusModelTable.h" 00202 #include "CalFocusModelRow.h" 00203 00204 #include "CalGainTable.h" 00205 #include "CalGainRow.h" 00206 00207 #include "CalPrimaryBeamTable.h" 00208 #include "CalPrimaryBeamRow.h" 00209 00210 #include "CalWVRTable.h" 00211 #include "CalWVRRow.h" 00212 00213 #include "AnnotationTable.h" 00214 #include "AnnotationRow.h" 00215 00216 #include "DelayModelTable.h" 00217 #include "DelayModelRow.h" 00218 00219 #include "FlagTable.h" 00220 #include "FlagRow.h" 00221 00222 #include "ScaleTable.h" 00223 #include "ScaleRow.h" 00224 00225 #include "SysPowerTable.h" 00226 #include "SysPowerRow.h" 00227 00228 #include "CalAppPhaseTable.h" 00229 #include "CalAppPhaseRow.h" 00230 00231 00232 00233 /*\file "Merger.h" 00234 \brief Generated from model's revision "-1", branch "" 00235 */ 00236 using namespace std; 00237 00238 namespace asdm { 00239 class Merger { 00240 public : 00241 Merger(); 00242 virtual ~Merger(); 00243 00244 void merge(ASDM* ds1, ASDM* ds2); 00245 00246 private: 00247 ASDM* ds1; 00248 ASDM* ds2; 00249 map<string, Tag> tagTag; 00250 Tag getTag(const Tag& t, void (Merger::*mergeTables)()); 00251 00252 map<string, int> idId; 00253 int getId(const string& tableName, int id, void (Merger::*mergeTables)()); 00254 00255 00256 bool hasMergedSBSummary; 00257 00258 bool hasMergedConfigDescription; 00259 00260 bool hasMergedField; 00261 00262 bool hasMergedState; 00263 00264 bool hasMergedAntenna; 00265 00266 bool hasMergedDataDescription; 00267 00268 bool hasMergedSwitchCycle; 00269 00270 bool hasMergedSource; 00271 00272 bool hasMergedFeed; 00273 00274 bool hasMergedSpectralWindow; 00275 00276 bool hasMergedFreqOffset; 00277 00278 bool hasMergedPolarization; 00279 00280 bool hasMergedReceiver; 00281 00282 bool hasMergedDoppler; 00283 00284 bool hasMergedProcessor; 00285 00286 bool hasMergedCorrelatorMode; 00287 00288 bool hasMergedCalDevice; 00289 00290 bool hasMergedFlagCmd; 00291 00292 bool hasMergedFocus; 00293 00294 bool hasMergedHistory; 00295 00296 bool hasMergedObservation; 00297 00298 bool hasMergedPointing; 00299 00300 bool hasMergedSeeing; 00301 00302 bool hasMergedSysCal; 00303 00304 bool hasMergedTotalPower; 00305 00306 bool hasMergedWeather; 00307 00308 bool hasMergedWVMCal; 00309 00310 bool hasMergedEphemeris; 00311 00312 bool hasMergedExecBlock; 00313 00314 bool hasMergedScan; 00315 00316 bool hasMergedSubscan; 00317 00318 bool hasMergedMain; 00319 00320 bool hasMergedFocusModel; 00321 00322 bool hasMergedGainTracking; 00323 00324 bool hasMergedPointingModel; 00325 00326 bool hasMergedCalAmpli; 00327 00328 bool hasMergedCalData; 00329 00330 bool hasMergedCalReduction; 00331 00332 bool hasMergedCalPhase; 00333 00334 bool hasMergedCalSeeing; 00335 00336 bool hasMergedCalPosition; 00337 00338 bool hasMergedCalPointing; 00339 00340 bool hasMergedCalPointingModel; 00341 00342 bool hasMergedCalHolography; 00343 00344 bool hasMergedCalAtmosphere; 00345 00346 bool hasMergedCalCurve; 00347 00348 bool hasMergedStation; 00349 00350 bool hasMergedAlmaRadiometer; 00351 00352 bool hasMergedSquareLawDetector; 00353 00354 bool hasMergedCalFocus; 00355 00356 bool hasMergedCalDelay; 00357 00358 bool hasMergedHolography; 00359 00360 bool hasMergedCalBandpass; 00361 00362 bool hasMergedCalFlux; 00363 00364 bool hasMergedCalFocusModel; 00365 00366 bool hasMergedCalGain; 00367 00368 bool hasMergedCalPrimaryBeam; 00369 00370 bool hasMergedCalWVR; 00371 00372 bool hasMergedAnnotation; 00373 00374 bool hasMergedDelayModel; 00375 00376 bool hasMergedFlag; 00377 00378 bool hasMergedScale; 00379 00380 bool hasMergedSysPower; 00381 00382 bool hasMergedCalAppPhase; 00383 00384 00385 00386 void mergeSBSummary(); 00387 void postMergeSBSummary(); 00388 00389 void mergeConfigDescription(); 00390 void postMergeConfigDescription(); 00391 00392 void mergeField(); 00393 void postMergeField(); 00394 00395 void mergeState(); 00396 void postMergeState(); 00397 00398 void mergeAntenna(); 00399 void postMergeAntenna(); 00400 00401 void mergeDataDescription(); 00402 void postMergeDataDescription(); 00403 00404 void mergeSwitchCycle(); 00405 void postMergeSwitchCycle(); 00406 00407 void mergeSource(); 00408 void postMergeSource(); 00409 00410 void mergeFeed(); 00411 void postMergeFeed(); 00412 00413 void mergeSpectralWindow(); 00414 void postMergeSpectralWindow(); 00415 00416 void mergeFreqOffset(); 00417 void postMergeFreqOffset(); 00418 00419 void mergePolarization(); 00420 void postMergePolarization(); 00421 00422 void mergeReceiver(); 00423 void postMergeReceiver(); 00424 00425 void mergeDoppler(); 00426 void postMergeDoppler(); 00427 00428 void mergeProcessor(); 00429 void postMergeProcessor(); 00430 00431 void mergeCorrelatorMode(); 00432 void postMergeCorrelatorMode(); 00433 00434 void mergeCalDevice(); 00435 void postMergeCalDevice(); 00436 00437 void mergeFlagCmd(); 00438 void postMergeFlagCmd(); 00439 00440 void mergeFocus(); 00441 void postMergeFocus(); 00442 00443 void mergeHistory(); 00444 void postMergeHistory(); 00445 00446 void mergeObservation(); 00447 void postMergeObservation(); 00448 00449 void mergePointing(); 00450 void postMergePointing(); 00451 00452 void mergeSeeing(); 00453 void postMergeSeeing(); 00454 00455 void mergeSysCal(); 00456 void postMergeSysCal(); 00457 00458 void mergeTotalPower(); 00459 void postMergeTotalPower(); 00460 00461 void mergeWeather(); 00462 void postMergeWeather(); 00463 00464 void mergeWVMCal(); 00465 void postMergeWVMCal(); 00466 00467 void mergeEphemeris(); 00468 void postMergeEphemeris(); 00469 00470 void mergeExecBlock(); 00471 void postMergeExecBlock(); 00472 00473 void mergeScan(); 00474 void postMergeScan(); 00475 00476 void mergeSubscan(); 00477 void postMergeSubscan(); 00478 00479 void mergeMain(); 00480 void postMergeMain(); 00481 00482 void mergeFocusModel(); 00483 void postMergeFocusModel(); 00484 00485 void mergeGainTracking(); 00486 void postMergeGainTracking(); 00487 00488 void mergePointingModel(); 00489 void postMergePointingModel(); 00490 00491 void mergeCalAmpli(); 00492 void postMergeCalAmpli(); 00493 00494 void mergeCalData(); 00495 void postMergeCalData(); 00496 00497 void mergeCalReduction(); 00498 void postMergeCalReduction(); 00499 00500 void mergeCalPhase(); 00501 void postMergeCalPhase(); 00502 00503 void mergeCalSeeing(); 00504 void postMergeCalSeeing(); 00505 00506 void mergeCalPosition(); 00507 void postMergeCalPosition(); 00508 00509 void mergeCalPointing(); 00510 void postMergeCalPointing(); 00511 00512 void mergeCalPointingModel(); 00513 void postMergeCalPointingModel(); 00514 00515 void mergeCalHolography(); 00516 void postMergeCalHolography(); 00517 00518 void mergeCalAtmosphere(); 00519 void postMergeCalAtmosphere(); 00520 00521 void mergeCalCurve(); 00522 void postMergeCalCurve(); 00523 00524 void mergeStation(); 00525 void postMergeStation(); 00526 00527 void mergeAlmaRadiometer(); 00528 void postMergeAlmaRadiometer(); 00529 00530 void mergeSquareLawDetector(); 00531 void postMergeSquareLawDetector(); 00532 00533 void mergeCalFocus(); 00534 void postMergeCalFocus(); 00535 00536 void mergeCalDelay(); 00537 void postMergeCalDelay(); 00538 00539 void mergeHolography(); 00540 void postMergeHolography(); 00541 00542 void mergeCalBandpass(); 00543 void postMergeCalBandpass(); 00544 00545 void mergeCalFlux(); 00546 void postMergeCalFlux(); 00547 00548 void mergeCalFocusModel(); 00549 void postMergeCalFocusModel(); 00550 00551 void mergeCalGain(); 00552 void postMergeCalGain(); 00553 00554 void mergeCalPrimaryBeam(); 00555 void postMergeCalPrimaryBeam(); 00556 00557 void mergeCalWVR(); 00558 void postMergeCalWVR(); 00559 00560 void mergeAnnotation(); 00561 void postMergeAnnotation(); 00562 00563 void mergeDelayModel(); 00564 void postMergeDelayModel(); 00565 00566 void mergeFlag(); 00567 void postMergeFlag(); 00568 00569 void mergeScale(); 00570 void postMergeScale(); 00571 00572 void mergeSysPower(); 00573 void postMergeSysPower(); 00574 00575 void mergeCalAppPhase(); 00576 void postMergeCalAppPhase(); 00577 00578 00579 00580 void (Merger::*mergeSBSummaryPtr) () ; 00581 00582 void (Merger::*mergeConfigDescriptionPtr) () ; 00583 00584 void (Merger::*mergeFieldPtr) () ; 00585 00586 void (Merger::*mergeStatePtr) () ; 00587 00588 void (Merger::*mergeAntennaPtr) () ; 00589 00590 void (Merger::*mergeDataDescriptionPtr) () ; 00591 00592 void (Merger::*mergeSwitchCyclePtr) () ; 00593 00594 void (Merger::*mergeSourcePtr) () ; 00595 00596 void (Merger::*mergeFeedPtr) () ; 00597 00598 void (Merger::*mergeSpectralWindowPtr) () ; 00599 00600 void (Merger::*mergeFreqOffsetPtr) () ; 00601 00602 void (Merger::*mergePolarizationPtr) () ; 00603 00604 void (Merger::*mergeReceiverPtr) () ; 00605 00606 void (Merger::*mergeDopplerPtr) () ; 00607 00608 void (Merger::*mergeProcessorPtr) () ; 00609 00610 void (Merger::*mergeCorrelatorModePtr) () ; 00611 00612 void (Merger::*mergeCalDevicePtr) () ; 00613 00614 void (Merger::*mergeFlagCmdPtr) () ; 00615 00616 void (Merger::*mergeFocusPtr) () ; 00617 00618 void (Merger::*mergeHistoryPtr) () ; 00619 00620 void (Merger::*mergeObservationPtr) () ; 00621 00622 void (Merger::*mergePointingPtr) () ; 00623 00624 void (Merger::*mergeSeeingPtr) () ; 00625 00626 void (Merger::*mergeSysCalPtr) () ; 00627 00628 void (Merger::*mergeTotalPowerPtr) () ; 00629 00630 void (Merger::*mergeWeatherPtr) () ; 00631 00632 void (Merger::*mergeWVMCalPtr) () ; 00633 00634 void (Merger::*mergeEphemerisPtr) () ; 00635 00636 void (Merger::*mergeExecBlockPtr) () ; 00637 00638 void (Merger::*mergeScanPtr) () ; 00639 00640 void (Merger::*mergeSubscanPtr) () ; 00641 00642 void (Merger::*mergeMainPtr) () ; 00643 00644 void (Merger::*mergeFocusModelPtr) () ; 00645 00646 void (Merger::*mergeGainTrackingPtr) () ; 00647 00648 void (Merger::*mergePointingModelPtr) () ; 00649 00650 void (Merger::*mergeCalAmpliPtr) () ; 00651 00652 void (Merger::*mergeCalDataPtr) () ; 00653 00654 void (Merger::*mergeCalReductionPtr) () ; 00655 00656 void (Merger::*mergeCalPhasePtr) () ; 00657 00658 void (Merger::*mergeCalSeeingPtr) () ; 00659 00660 void (Merger::*mergeCalPositionPtr) () ; 00661 00662 void (Merger::*mergeCalPointingPtr) () ; 00663 00664 void (Merger::*mergeCalPointingModelPtr) () ; 00665 00666 void (Merger::*mergeCalHolographyPtr) () ; 00667 00668 void (Merger::*mergeCalAtmospherePtr) () ; 00669 00670 void (Merger::*mergeCalCurvePtr) () ; 00671 00672 void (Merger::*mergeStationPtr) () ; 00673 00674 void (Merger::*mergeAlmaRadiometerPtr) () ; 00675 00676 void (Merger::*mergeSquareLawDetectorPtr) () ; 00677 00678 void (Merger::*mergeCalFocusPtr) () ; 00679 00680 void (Merger::*mergeCalDelayPtr) () ; 00681 00682 void (Merger::*mergeHolographyPtr) () ; 00683 00684 void (Merger::*mergeCalBandpassPtr) () ; 00685 00686 void (Merger::*mergeCalFluxPtr) () ; 00687 00688 void (Merger::*mergeCalFocusModelPtr) () ; 00689 00690 void (Merger::*mergeCalGainPtr) () ; 00691 00692 void (Merger::*mergeCalPrimaryBeamPtr) () ; 00693 00694 void (Merger::*mergeCalWVRPtr) () ; 00695 00696 void (Merger::*mergeAnnotationPtr) () ; 00697 00698 void (Merger::*mergeDelayModelPtr) () ; 00699 00700 void (Merger::*mergeFlagPtr) () ; 00701 00702 void (Merger::*mergeScalePtr) () ; 00703 00704 void (Merger::*mergeSysPowerPtr) () ; 00705 00706 void (Merger::*mergeCalAppPhasePtr) () ; 00707 00708 }; 00709 } // End namespace asdm 00710 00711 #endif /* Merger_CLASS */