CalPhaseRow.h

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 CalPhaseRow.h
00032  */
00033  
00034 #ifndef CalPhaseRow_CLASS
00035 #define CalPhaseRow_CLASS
00036 
00037 #include <vector>
00038 #include <string>
00039 #include <set>
00040 using std::vector;
00041 using std::string;
00042 using std::set;
00043 
00044 #ifndef WITHOUT_ACS
00045 #include <asdmIDLC.h>
00046 using asdmIDL::CalPhaseRowIDL;
00047 #endif
00048 
00049 #include <Angle.h>
00050 #include <AngularRate.h>
00051 #include <ArrayTime.h>
00052 #include <ArrayTimeInterval.h>
00053 #include <Complex.h>
00054 #include <Entity.h>
00055 #include <EntityId.h>
00056 #include <EntityRef.h>
00057 #include <Flux.h>
00058 #include <Frequency.h>
00059 #include <Humidity.h>
00060 #include <Interval.h>
00061 #include <Length.h>
00062 #include <Pressure.h>
00063 #include <Speed.h>
00064 #include <Tag.h>
00065 #include <Temperature.h>
00066 #include <ConversionException.h>
00067 #include <NoSuchRow.h>
00068 #include <IllegalAccessException.h>
00069 
00070 /*
00071 #include <Enumerations.h>
00072 using namespace enumerations;
00073  */
00074 
00075 
00076 
00077 
00078         
00079 #include "CBasebandName.h"
00080 using namespace BasebandNameMod;
00081         
00082 
00083         
00084 
00085         
00086 
00087         
00088 
00089         
00090 #include "CReceiverBand.h"
00091 using namespace ReceiverBandMod;
00092         
00093 
00094         
00095 
00096         
00097 #include "CAtmPhaseCorrection.h"
00098 using namespace AtmPhaseCorrectionMod;
00099         
00100 
00101         
00102 #include "CPolarizationType.h"
00103 using namespace PolarizationTypeMod;
00104         
00105 
00106         
00107 
00108         
00109 
00110         
00111 
00112         
00113 
00114         
00115 
00116         
00117 
00118         
00119 
00120         
00121 
00122         
00123 
00124         
00125 
00126         
00127 
00128 
00129 
00130 using asdm::Angle;
00131 using asdm::AngularRate;
00132 using asdm::ArrayTime;
00133 using asdm::Complex;
00134 using asdm::Entity;
00135 using asdm::EntityId;
00136 using asdm::EntityRef;
00137 using asdm::Flux;
00138 using asdm::Frequency;
00139 using asdm::Humidity;
00140 using asdm::Interval;
00141 using asdm::Length;
00142 using asdm::Pressure;
00143 using asdm::Speed;
00144 using asdm::Tag;
00145 using asdm::Temperature;
00146 using asdm::ConversionException;
00147 using asdm::NoSuchRow;
00148 using asdm::IllegalAccessException;
00149 
00150 /*\file CalPhase.h
00151     \brief Generated from model's revision "1.41", branch "HEAD"
00152 */
00153 
00154 namespace asdm {
00155 
00156 //class asdm::CalPhaseTable;
00157 
00158 
00159 // class asdm::CalDataRow;
00160 class CalDataRow;
00161 
00162 // class asdm::CalReductionRow;
00163 class CalReductionRow;
00164         
00165 
00172 class CalPhaseRow {
00173 friend class asdm::CalPhaseTable;
00174 
00175 public:
00176 
00177         virtual ~CalPhaseRow();
00178 
00182         CalPhaseTable &getTable() const;
00183         
00184 #ifndef WITHOUT_ACS
00185 
00189         CalPhaseRowIDL *toIDL() const;
00190 #endif
00191         
00192 #ifndef WITHOUT_ACS
00193 
00197         void setFromIDL (CalPhaseRowIDL x) throw(ConversionException);
00198 #endif
00199         
00204         string toXML() const;
00205 
00211         void setFromXML (string rowDoc) throw(ConversionException);
00212         
00214         // Intrinsic Table Attributes //
00216         
00217         
00218         // ===> Attribute basebandName
00219         
00220         
00221         
00222 
00223         
00228         BasebandName getBasebandName() const;
00229         
00230  
00231         
00232         
00239         void setBasebandName (BasebandName basebandName) throw(IllegalAccessException);
00240                 
00241         
00242         
00243         
00244 
00245 
00246         
00247         // ===> Attribute numBaseline
00248         
00249         
00250         
00251 
00252         
00257         int getNumBaseline() const;
00258         
00259  
00260         
00261         
00267         void setNumBaseline (int numBaseline);
00268                 
00269         
00270         
00271         
00272 
00273 
00274         
00275         // ===> Attribute numAPC
00276         
00277         
00278         
00279 
00280         
00285         int getNumAPC() const;
00286         
00287  
00288         
00289         
00295         void setNumAPC (int numAPC);
00296                 
00297         
00298         
00299         
00300 
00301 
00302         
00303         // ===> Attribute numReceptor
00304         
00305         
00306         
00307 
00308         
00313         int getNumReceptor() const;
00314         
00315  
00316         
00317         
00323         void setNumReceptor (int numReceptor);
00324                 
00325         
00326         
00327         
00328 
00329 
00330         
00331         // ===> Attribute receiverBand
00332         
00333         
00334         
00335 
00336         
00341         ReceiverBand getReceiverBand() const;
00342         
00343  
00344         
00345         
00351         void setReceiverBand (ReceiverBand receiverBand);
00352                 
00353         
00354         
00355         
00356 
00357 
00358         
00359         // ===> Attribute antennaNames
00360         
00361         
00362         
00363 
00364         
00369         vector<vector<string > > getAntennaNames() const;
00370         
00371  
00372         
00373         
00379         void setAntennaNames (vector<vector<string > > antennaNames);
00380                 
00381         
00382         
00383         
00384 
00385 
00386         
00387         // ===> Attribute atmPhaseCorrections
00388         
00389         
00390         
00391 
00392         
00397         vector<AtmPhaseCorrection > getAtmPhaseCorrections() const;
00398         
00399  
00400         
00401         
00407         void setAtmPhaseCorrections (vector<AtmPhaseCorrection > atmPhaseCorrections);
00408                 
00409         
00410         
00411         
00412 
00413 
00414         
00415         // ===> Attribute polarizationTypes
00416         
00417         
00418         
00419 
00420         
00425         vector<PolarizationType > getPolarizationTypes() const;
00426         
00427  
00428         
00429         
00435         void setPolarizationTypes (vector<PolarizationType > polarizationTypes);
00436                 
00437         
00438         
00439         
00440 
00441 
00442         
00443         // ===> Attribute startValidTime
00444         
00445         
00446         
00447 
00448         
00453         ArrayTime getStartValidTime() const;
00454         
00455  
00456         
00457         
00463         void setStartValidTime (ArrayTime startValidTime);
00464                 
00465         
00466         
00467         
00468 
00469 
00470         
00471         // ===> Attribute endValidTime
00472         
00473         
00474         
00475 
00476         
00481         ArrayTime getEndValidTime() const;
00482         
00483  
00484         
00485         
00491         void setEndValidTime (ArrayTime endValidTime);
00492                 
00493         
00494         
00495         
00496 
00497 
00498         
00499         // ===> Attribute frequencyRange
00500         
00501         
00502         
00503 
00504         
00509         vector<Frequency > getFrequencyRange() const;
00510         
00511  
00512         
00513         
00519         void setFrequencyRange (vector<Frequency > frequencyRange);
00520                 
00521         
00522         
00523         
00524 
00525 
00526         
00527         // ===> Attribute ampli
00528         
00529         
00530         
00531 
00532         
00537         vector<vector<vector<float > > > getAmpli() const;
00538         
00539  
00540         
00541         
00547         void setAmpli (vector<vector<vector<float > > > ampli);
00548                 
00549         
00550         
00551         
00552 
00553 
00554         
00555         // ===> Attribute phase
00556         
00557         
00558         
00559 
00560         
00565         vector<vector<vector<float > > > getPhase() const;
00566         
00567  
00568         
00569         
00575         void setPhase (vector<vector<vector<float > > > phase);
00576                 
00577         
00578         
00579         
00580 
00581 
00582         
00583         // ===> Attribute phaseRms
00584         
00585         
00586         
00587 
00588         
00593         vector<vector<vector<Angle > > > getPhaseRms() const;
00594         
00595  
00596         
00597         
00603         void setPhaseRms (vector<vector<vector<Angle > > > phaseRms);
00604                 
00605         
00606         
00607         
00608 
00609 
00610         
00611         // ===> Attribute statPhaseRms
00612         
00613         
00614         
00615 
00616         
00621         vector<vector<Angle > > getStatPhaseRms() const;
00622         
00623  
00624         
00625         
00631         void setStatPhaseRms (vector<vector<Angle > > statPhaseRms);
00632                 
00633         
00634         
00635         
00636 
00637 
00638         
00639         // ===> Attribute correctionValidity, which is optional
00640         
00641         
00642         
00647         bool isCorrectionValidityExists() const;
00648         
00649 
00650         
00656         vector<bool > getCorrectionValidity() const throw(IllegalAccessException);
00657         
00658  
00659         
00660         
00666         void setCorrectionValidity (vector<bool > correctionValidity);
00667                 
00668         
00669         
00670         
00674         void clearCorrectionValidity ();
00675         
00676 
00677 
00678         
00679         // ===> Attribute decorrelationFactor
00680         
00681         
00682         
00683 
00684         
00689         vector<vector<float > > getDecorrelationFactor() const;
00690         
00691  
00692         
00693         
00699         void setDecorrelationFactor (vector<vector<float > > decorrelationFactor);
00700                 
00701         
00702         
00703         
00704 
00705 
00706         
00707         // ===> Attribute baselineLengths
00708         
00709         
00710         
00711 
00712         
00717         vector<Length > getBaselineLengths() const;
00718         
00719  
00720         
00721         
00727         void setBaselineLengths (vector<Length > baselineLengths);
00728                 
00729         
00730         
00731         
00732 
00733 
00734         
00735         // ===> Attribute direction
00736         
00737         
00738         
00739 
00740         
00745         vector<Angle > getDirection() const;
00746         
00747  
00748         
00749         
00755         void setDirection (vector<Angle > direction);
00756                 
00757         
00758         
00759         
00760 
00761 
00763         // Extrinsic Table Attributes //
00765         
00766         
00767         // ===> Attribute calDataId
00768         
00769         
00770         
00771 
00772         
00777         Tag getCalDataId() const;
00778         
00779  
00780         
00781         
00788         void setCalDataId (Tag calDataId) throw(IllegalAccessException);
00789                 
00790         
00791         
00792         
00793 
00794 
00795         
00796         // ===> Attribute calReductionId
00797         
00798         
00799         
00800 
00801         
00806         Tag getCalReductionId() const;
00807         
00808  
00809         
00810         
00817         void setCalReductionId (Tag calReductionId) throw(IllegalAccessException);
00818                 
00819         
00820         
00821         
00822 
00823 
00825         // Links //
00827         
00828         
00829 
00830         
00831                 
00838          CalDataRow* getCalDataUsingCalDataId();
00839          
00840 
00841         
00842 
00843         
00844 
00845         
00846                 
00853          CalReductionRow* getCalReductionUsingCalReductionId();
00854          
00855 
00856         
00857 
00858         
00859         
00860         
00865         bool compareNoAutoInc(Tag calDataId, Tag calReductionId, BasebandName basebandName, int numBaseline, int numAPC, int numReceptor, ReceiverBand receiverBand, vector<vector<string > > antennaNames, vector<AtmPhaseCorrection > atmPhaseCorrections, vector<PolarizationType > polarizationTypes, ArrayTime startValidTime, ArrayTime endValidTime, vector<Frequency > frequencyRange, vector<vector<vector<float > > > ampli, vector<vector<vector<float > > > phase, vector<vector<vector<Angle > > > phaseRms, vector<vector<Angle > > statPhaseRms, vector<vector<float > > decorrelationFactor, vector<Length > baselineLengths, vector<Angle > direction);
00866         
00867         
00868 
00869         
00870         bool compareRequiredValue(int numBaseline, int numAPC, int numReceptor, ReceiverBand receiverBand, vector<vector<string > > antennaNames, vector<AtmPhaseCorrection > atmPhaseCorrections, vector<PolarizationType > polarizationTypes, ArrayTime startValidTime, ArrayTime endValidTime, vector<Frequency > frequencyRange, vector<vector<vector<float > > > ampli, vector<vector<vector<float > > > phase, vector<vector<vector<Angle > > > phaseRms, vector<vector<Angle > > statPhaseRms, vector<vector<float > > decorrelationFactor, vector<Length > baselineLengths, vector<Angle > direction); 
00871                  
00872         
00881         bool equalByRequiredValue(CalPhaseRow* x) ;
00882 
00883 private:
00887         CalPhaseTable &table;
00891         bool hasBeenAdded;
00892 
00893         // This method is used by the Table class when this row is added to the table.
00894         void isAdded();
00895 
00896 
00905         CalPhaseRow (CalPhaseTable &table);
00906 
00924          CalPhaseRow (CalPhaseTable &table, CalPhaseRow &row);
00925                 
00927         // Intrinsic Table Attributes //
00929         
00930         
00931         // ===> Attribute basebandName
00932         
00933         
00934 
00935         BasebandName basebandName;
00936 
00937         
00938         
00939         
00940 
00941         
00942         // ===> Attribute numBaseline
00943         
00944         
00945 
00946         int numBaseline;
00947 
00948         
00949         
00950         
00951 
00952         
00953         // ===> Attribute numAPC
00954         
00955         
00956 
00957         int numAPC;
00958 
00959         
00960         
00961         
00962 
00963         
00964         // ===> Attribute numReceptor
00965         
00966         
00967 
00968         int numReceptor;
00969 
00970         
00971         
00972         
00973 
00974         
00975         // ===> Attribute receiverBand
00976         
00977         
00978 
00979         ReceiverBand receiverBand;
00980 
00981         
00982         
00983         
00984 
00985         
00986         // ===> Attribute antennaNames
00987         
00988         
00989 
00990         vector<vector<string > > antennaNames;
00991 
00992         
00993         
00994         
00995 
00996         
00997         // ===> Attribute atmPhaseCorrections
00998         
00999         
01000 
01001         vector<AtmPhaseCorrection > atmPhaseCorrections;
01002 
01003         
01004         
01005         
01006 
01007         
01008         // ===> Attribute polarizationTypes
01009         
01010         
01011 
01012         vector<PolarizationType > polarizationTypes;
01013 
01014         
01015         
01016         
01017 
01018         
01019         // ===> Attribute startValidTime
01020         
01021         
01022 
01023         ArrayTime startValidTime;
01024 
01025         
01026         
01027         
01028 
01029         
01030         // ===> Attribute endValidTime
01031         
01032         
01033 
01034         ArrayTime endValidTime;
01035 
01036         
01037         
01038         
01039 
01040         
01041         // ===> Attribute frequencyRange
01042         
01043         
01044 
01045         vector<Frequency > frequencyRange;
01046 
01047         
01048         
01049         
01050 
01051         
01052         // ===> Attribute ampli
01053         
01054         
01055 
01056         vector<vector<vector<float > > > ampli;
01057 
01058         
01059         
01060         
01061 
01062         
01063         // ===> Attribute phase
01064         
01065         
01066 
01067         vector<vector<vector<float > > > phase;
01068 
01069         
01070         
01071         
01072 
01073         
01074         // ===> Attribute phaseRms
01075         
01076         
01077 
01078         vector<vector<vector<Angle > > > phaseRms;
01079 
01080         
01081         
01082         
01083 
01084         
01085         // ===> Attribute statPhaseRms
01086         
01087         
01088 
01089         vector<vector<Angle > > statPhaseRms;
01090 
01091         
01092         
01093         
01094 
01095         
01096         // ===> Attribute correctionValidity, which is optional
01097         
01098         
01099         bool correctionValidityExists;
01100         
01101 
01102         vector<bool > correctionValidity;
01103 
01104         
01105         
01106         
01107 
01108         
01109         // ===> Attribute decorrelationFactor
01110         
01111         
01112 
01113         vector<vector<float > > decorrelationFactor;
01114 
01115         
01116         
01117         
01118 
01119         
01120         // ===> Attribute baselineLengths
01121         
01122         
01123 
01124         vector<Length > baselineLengths;
01125 
01126         
01127         
01128         
01129 
01130         
01131         // ===> Attribute direction
01132         
01133         
01134 
01135         vector<Angle > direction;
01136 
01137         
01138         
01139         
01140 
01142         // Extrinsic Table Attributes //
01144         
01145         
01146         // ===> Attribute calDataId
01147         
01148         
01149 
01150         Tag calDataId;
01151 
01152         
01153         
01154         
01155 
01156         
01157         // ===> Attribute calReductionId
01158         
01159         
01160 
01161         Tag calReductionId;
01162 
01163         
01164         
01165         
01166 
01168         // Links //
01170         
01171         
01172                 
01173 
01174          
01175 
01176         
01177 
01178         
01179                 
01180 
01181          
01182 
01183         
01184 
01185 
01186 };
01187 
01188 } // End namespace asdm
01189 
01190 #endif /* CalPhase_CLASS */

Generated on Thu Nov 29 16:46:46 2007 for ASDM C++ Implementation by  doxygen 1.5.1