casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Merger.h
Go to the documentation of this file.
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 
00229 
00230 /*\file "Merger.h"
00231     \brief Generated from model's revision "1.61", branch "HEAD"
00232 */
00233 using namespace std;
00234 
00235 namespace asdm {
00236         class Merger {
00237                 public :
00238                         Merger();
00239                         virtual ~Merger();
00240                         
00241                         void merge(ASDM* ds1, ASDM* ds2);
00242                         
00243                 private:
00244                         ASDM* ds1;
00245                         ASDM* ds2;
00246                         map<string, Tag> tagTag;
00247                         Tag getTag(const Tag& t, void (Merger::*mergeTables)());
00248                         
00249                         map<string, int> idId;
00250                         int getId(const string& tableName, int id, void (Merger::*mergeTables)()); 
00251                         
00252 
00253                         bool hasMergedSBSummary;        
00254 
00255                         bool hasMergedConfigDescription;        
00256 
00257                         bool hasMergedField;    
00258 
00259                         bool hasMergedState;    
00260 
00261                         bool hasMergedAntenna;  
00262 
00263                         bool hasMergedDataDescription;  
00264 
00265                         bool hasMergedSwitchCycle;      
00266 
00267                         bool hasMergedSource;   
00268 
00269                         bool hasMergedFeed;     
00270 
00271                         bool hasMergedSpectralWindow;   
00272 
00273                         bool hasMergedFreqOffset;       
00274 
00275                         bool hasMergedPolarization;     
00276 
00277                         bool hasMergedReceiver; 
00278 
00279                         bool hasMergedDoppler;  
00280 
00281                         bool hasMergedProcessor;        
00282 
00283                         bool hasMergedCorrelatorMode;   
00284 
00285                         bool hasMergedCalDevice;        
00286 
00287                         bool hasMergedFlagCmd;  
00288 
00289                         bool hasMergedFocus;    
00290 
00291                         bool hasMergedHistory;  
00292 
00293                         bool hasMergedObservation;      
00294 
00295                         bool hasMergedPointing; 
00296 
00297                         bool hasMergedSeeing;   
00298 
00299                         bool hasMergedSysCal;   
00300 
00301                         bool hasMergedTotalPower;       
00302 
00303                         bool hasMergedWeather;  
00304 
00305                         bool hasMergedWVMCal;   
00306 
00307                         bool hasMergedEphemeris;        
00308 
00309                         bool hasMergedExecBlock;        
00310 
00311                         bool hasMergedScan;     
00312 
00313                         bool hasMergedSubscan;  
00314 
00315                         bool hasMergedMain;     
00316 
00317                         bool hasMergedFocusModel;       
00318 
00319                         bool hasMergedGainTracking;     
00320 
00321                         bool hasMergedPointingModel;    
00322 
00323                         bool hasMergedCalAmpli; 
00324 
00325                         bool hasMergedCalData;  
00326 
00327                         bool hasMergedCalReduction;     
00328 
00329                         bool hasMergedCalPhase; 
00330 
00331                         bool hasMergedCalSeeing;        
00332 
00333                         bool hasMergedCalPosition;      
00334 
00335                         bool hasMergedCalPointing;      
00336 
00337                         bool hasMergedCalPointingModel; 
00338 
00339                         bool hasMergedCalHolography;    
00340 
00341                         bool hasMergedCalAtmosphere;    
00342 
00343                         bool hasMergedCalCurve; 
00344 
00345                         bool hasMergedStation;  
00346 
00347                         bool hasMergedAlmaRadiometer;   
00348 
00349                         bool hasMergedSquareLawDetector;        
00350 
00351                         bool hasMergedCalFocus; 
00352 
00353                         bool hasMergedCalDelay; 
00354 
00355                         bool hasMergedHolography;       
00356 
00357                         bool hasMergedCalBandpass;      
00358 
00359                         bool hasMergedCalFlux;  
00360 
00361                         bool hasMergedCalFocusModel;    
00362 
00363                         bool hasMergedCalGain;  
00364 
00365                         bool hasMergedCalPrimaryBeam;   
00366 
00367                         bool hasMergedCalWVR;   
00368 
00369                         bool hasMergedAnnotation;       
00370 
00371                         bool hasMergedDelayModel;       
00372 
00373                         bool hasMergedFlag;     
00374 
00375                         bool hasMergedScale;    
00376 
00377                         bool hasMergedSysPower; 
00378                         
00379 
00380 
00381                         void mergeSBSummary();
00382                         void postMergeSBSummary();                      
00383 
00384                         void mergeConfigDescription();
00385                         void postMergeConfigDescription();                      
00386 
00387                         void mergeField();
00388                         void postMergeField();                  
00389 
00390                         void mergeState();
00391                         void postMergeState();                  
00392 
00393                         void mergeAntenna();
00394                         void postMergeAntenna();                        
00395 
00396                         void mergeDataDescription();
00397                         void postMergeDataDescription();                        
00398 
00399                         void mergeSwitchCycle();
00400                         void postMergeSwitchCycle();                    
00401 
00402                         void mergeSource();
00403                         void postMergeSource();                 
00404 
00405                         void mergeFeed();
00406                         void postMergeFeed();                   
00407 
00408                         void mergeSpectralWindow();
00409                         void postMergeSpectralWindow();                 
00410 
00411                         void mergeFreqOffset();
00412                         void postMergeFreqOffset();                     
00413 
00414                         void mergePolarization();
00415                         void postMergePolarization();                   
00416 
00417                         void mergeReceiver();
00418                         void postMergeReceiver();                       
00419 
00420                         void mergeDoppler();
00421                         void postMergeDoppler();                        
00422 
00423                         void mergeProcessor();
00424                         void postMergeProcessor();                      
00425 
00426                         void mergeCorrelatorMode();
00427                         void postMergeCorrelatorMode();                 
00428 
00429                         void mergeCalDevice();
00430                         void postMergeCalDevice();                      
00431 
00432                         void mergeFlagCmd();
00433                         void postMergeFlagCmd();                        
00434 
00435                         void mergeFocus();
00436                         void postMergeFocus();                  
00437 
00438                         void mergeHistory();
00439                         void postMergeHistory();                        
00440 
00441                         void mergeObservation();
00442                         void postMergeObservation();                    
00443 
00444                         void mergePointing();
00445                         void postMergePointing();                       
00446 
00447                         void mergeSeeing();
00448                         void postMergeSeeing();                 
00449 
00450                         void mergeSysCal();
00451                         void postMergeSysCal();                 
00452 
00453                         void mergeTotalPower();
00454                         void postMergeTotalPower();                     
00455 
00456                         void mergeWeather();
00457                         void postMergeWeather();                        
00458 
00459                         void mergeWVMCal();
00460                         void postMergeWVMCal();                 
00461 
00462                         void mergeEphemeris();
00463                         void postMergeEphemeris();                      
00464 
00465                         void mergeExecBlock();
00466                         void postMergeExecBlock();                      
00467 
00468                         void mergeScan();
00469                         void postMergeScan();                   
00470 
00471                         void mergeSubscan();
00472                         void postMergeSubscan();                        
00473 
00474                         void mergeMain();
00475                         void postMergeMain();                   
00476 
00477                         void mergeFocusModel();
00478                         void postMergeFocusModel();                     
00479 
00480                         void mergeGainTracking();
00481                         void postMergeGainTracking();                   
00482 
00483                         void mergePointingModel();
00484                         void postMergePointingModel();                  
00485 
00486                         void mergeCalAmpli();
00487                         void postMergeCalAmpli();                       
00488 
00489                         void mergeCalData();
00490                         void postMergeCalData();                        
00491 
00492                         void mergeCalReduction();
00493                         void postMergeCalReduction();                   
00494 
00495                         void mergeCalPhase();
00496                         void postMergeCalPhase();                       
00497 
00498                         void mergeCalSeeing();
00499                         void postMergeCalSeeing();                      
00500 
00501                         void mergeCalPosition();
00502                         void postMergeCalPosition();                    
00503 
00504                         void mergeCalPointing();
00505                         void postMergeCalPointing();                    
00506 
00507                         void mergeCalPointingModel();
00508                         void postMergeCalPointingModel();                       
00509 
00510                         void mergeCalHolography();
00511                         void postMergeCalHolography();                  
00512 
00513                         void mergeCalAtmosphere();
00514                         void postMergeCalAtmosphere();                  
00515 
00516                         void mergeCalCurve();
00517                         void postMergeCalCurve();                       
00518 
00519                         void mergeStation();
00520                         void postMergeStation();                        
00521 
00522                         void mergeAlmaRadiometer();
00523                         void postMergeAlmaRadiometer();                 
00524 
00525                         void mergeSquareLawDetector();
00526                         void postMergeSquareLawDetector();                      
00527 
00528                         void mergeCalFocus();
00529                         void postMergeCalFocus();                       
00530 
00531                         void mergeCalDelay();
00532                         void postMergeCalDelay();                       
00533 
00534                         void mergeHolography();
00535                         void postMergeHolography();                     
00536 
00537                         void mergeCalBandpass();
00538                         void postMergeCalBandpass();                    
00539 
00540                         void mergeCalFlux();
00541                         void postMergeCalFlux();                        
00542 
00543                         void mergeCalFocusModel();
00544                         void postMergeCalFocusModel();                  
00545 
00546                         void mergeCalGain();
00547                         void postMergeCalGain();                        
00548 
00549                         void mergeCalPrimaryBeam();
00550                         void postMergeCalPrimaryBeam();                 
00551 
00552                         void mergeCalWVR();
00553                         void postMergeCalWVR();                 
00554 
00555                         void mergeAnnotation();
00556                         void postMergeAnnotation();                     
00557 
00558                         void mergeDelayModel();
00559                         void postMergeDelayModel();                     
00560 
00561                         void mergeFlag();
00562                         void postMergeFlag();                   
00563 
00564                         void mergeScale();
00565                         void postMergeScale();                  
00566 
00567                         void mergeSysPower();
00568                         void postMergeSysPower();                       
00569 
00570 
00571 
00572                 void (Merger::*mergeSBSummaryPtr) () ;
00573 
00574                 void (Merger::*mergeConfigDescriptionPtr) () ;
00575 
00576                 void (Merger::*mergeFieldPtr) () ;
00577 
00578                 void (Merger::*mergeStatePtr) () ;
00579 
00580                 void (Merger::*mergeAntennaPtr) () ;
00581 
00582                 void (Merger::*mergeDataDescriptionPtr) () ;
00583 
00584                 void (Merger::*mergeSwitchCyclePtr) () ;
00585 
00586                 void (Merger::*mergeSourcePtr) () ;
00587 
00588                 void (Merger::*mergeFeedPtr) () ;
00589 
00590                 void (Merger::*mergeSpectralWindowPtr) () ;
00591 
00592                 void (Merger::*mergeFreqOffsetPtr) () ;
00593 
00594                 void (Merger::*mergePolarizationPtr) () ;
00595 
00596                 void (Merger::*mergeReceiverPtr) () ;
00597 
00598                 void (Merger::*mergeDopplerPtr) () ;
00599 
00600                 void (Merger::*mergeProcessorPtr) () ;
00601 
00602                 void (Merger::*mergeCorrelatorModePtr) () ;
00603 
00604                 void (Merger::*mergeCalDevicePtr) () ;
00605 
00606                 void (Merger::*mergeFlagCmdPtr) () ;
00607 
00608                 void (Merger::*mergeFocusPtr) () ;
00609 
00610                 void (Merger::*mergeHistoryPtr) () ;
00611 
00612                 void (Merger::*mergeObservationPtr) () ;
00613 
00614                 void (Merger::*mergePointingPtr) () ;
00615 
00616                 void (Merger::*mergeSeeingPtr) () ;
00617 
00618                 void (Merger::*mergeSysCalPtr) () ;
00619 
00620                 void (Merger::*mergeTotalPowerPtr) () ;
00621 
00622                 void (Merger::*mergeWeatherPtr) () ;
00623 
00624                 void (Merger::*mergeWVMCalPtr) () ;
00625 
00626                 void (Merger::*mergeEphemerisPtr) () ;
00627 
00628                 void (Merger::*mergeExecBlockPtr) () ;
00629 
00630                 void (Merger::*mergeScanPtr) () ;
00631 
00632                 void (Merger::*mergeSubscanPtr) () ;
00633 
00634                 void (Merger::*mergeMainPtr) () ;
00635 
00636                 void (Merger::*mergeFocusModelPtr) () ;
00637 
00638                 void (Merger::*mergeGainTrackingPtr) () ;
00639 
00640                 void (Merger::*mergePointingModelPtr) () ;
00641 
00642                 void (Merger::*mergeCalAmpliPtr) () ;
00643 
00644                 void (Merger::*mergeCalDataPtr) () ;
00645 
00646                 void (Merger::*mergeCalReductionPtr) () ;
00647 
00648                 void (Merger::*mergeCalPhasePtr) () ;
00649 
00650                 void (Merger::*mergeCalSeeingPtr) () ;
00651 
00652                 void (Merger::*mergeCalPositionPtr) () ;
00653 
00654                 void (Merger::*mergeCalPointingPtr) () ;
00655 
00656                 void (Merger::*mergeCalPointingModelPtr) () ;
00657 
00658                 void (Merger::*mergeCalHolographyPtr) () ;
00659 
00660                 void (Merger::*mergeCalAtmospherePtr) () ;
00661 
00662                 void (Merger::*mergeCalCurvePtr) () ;
00663 
00664                 void (Merger::*mergeStationPtr) () ;
00665 
00666                 void (Merger::*mergeAlmaRadiometerPtr) () ;
00667 
00668                 void (Merger::*mergeSquareLawDetectorPtr) () ;
00669 
00670                 void (Merger::*mergeCalFocusPtr) () ;
00671 
00672                 void (Merger::*mergeCalDelayPtr) () ;
00673 
00674                 void (Merger::*mergeHolographyPtr) () ;
00675 
00676                 void (Merger::*mergeCalBandpassPtr) () ;
00677 
00678                 void (Merger::*mergeCalFluxPtr) () ;
00679 
00680                 void (Merger::*mergeCalFocusModelPtr) () ;
00681 
00682                 void (Merger::*mergeCalGainPtr) () ;
00683 
00684                 void (Merger::*mergeCalPrimaryBeamPtr) () ;
00685 
00686                 void (Merger::*mergeCalWVRPtr) () ;
00687 
00688                 void (Merger::*mergeAnnotationPtr) () ;
00689 
00690                 void (Merger::*mergeDelayModelPtr) () ;
00691 
00692                 void (Merger::*mergeFlagPtr) () ;
00693 
00694                 void (Merger::*mergeScalePtr) () ;
00695 
00696                 void (Merger::*mergeSysPowerPtr) () ;
00697 
00698         };
00699 } // End namespace asdm
00700 
00701 #endif  /* Merger_CLASS */