CalAmpliRow.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 CalAmpliRow.h
00032  */
00033  
00034 #ifndef CalAmpliRow_CLASS
00035 #define CalAmpliRow_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::CalAmpliRowIDL;
00047 #endif
00048 
00049 
00050 
00051 
00052 
00053 
00054 #include <ArrayTime.h>
00055 using  asdm::ArrayTime;
00056 
00057 #include <Tag.h>
00058 using  asdm::Tag;
00059 
00060 #include <Frequency.h>
00061 using  asdm::Frequency;
00062 
00063 
00064 
00065 
00066         
00067 
00068         
00069 #include "CAtmPhaseCorrection.h"
00070 using namespace AtmPhaseCorrectionMod;
00071         
00072 
00073         
00074 #include "CReceiverBand.h"
00075 using namespace ReceiverBandMod;
00076         
00077 
00078         
00079 
00080         
00081 #include "CPolarizationType.h"
00082 using namespace PolarizationTypeMod;
00083         
00084 
00085         
00086 
00087         
00088 
00089         
00090 
00091         
00092 
00093         
00094 
00095         
00096 
00097 
00098 
00099 #include <ConversionException.h>
00100 #include <NoSuchRow.h>
00101 #include <IllegalAccessException.h>
00102 
00103 
00104 /*\file CalAmpli.h
00105     \brief Generated from model's revision "1.55", branch "HEAD"
00106 */
00107 
00108 namespace asdm {
00109 
00110 //class asdm::CalAmpliTable;
00111 
00112 
00113 // class asdm::CalDataRow;
00114 class CalDataRow;
00115 
00116 // class asdm::CalReductionRow;
00117 class CalReductionRow;
00118         
00119 
00120 class CalAmpliRow;
00121 typedef void (CalAmpliRow::*CalAmpliAttributeFromBin) (EndianISStream& eiss);
00122 
00129 class CalAmpliRow {
00130 friend class asdm::CalAmpliTable;
00131 
00132 public:
00133 
00134         virtual ~CalAmpliRow();
00135 
00139         CalAmpliTable &getTable() const;
00140         
00145         bool isAdded() const;
00146                 
00148         // Intrinsic Table Attributes //
00150         
00151         
00152         // ===> Attribute antennaName
00153         
00154         
00155         
00156 
00157         
00162         string getAntennaName() const;
00163         
00164  
00165         
00166         
00176         void setAntennaName (string antennaName);
00177                 
00178         
00179         
00180         
00181 
00182 
00183         
00184         // ===> Attribute atmPhaseCorrection
00185         
00186         
00187         
00188 
00189         
00194         AtmPhaseCorrectionMod::AtmPhaseCorrection getAtmPhaseCorrection() const;
00195         
00196  
00197         
00198         
00208         void setAtmPhaseCorrection (AtmPhaseCorrectionMod::AtmPhaseCorrection atmPhaseCorrection);
00209                 
00210         
00211         
00212         
00213 
00214 
00215         
00216         // ===> Attribute receiverBand
00217         
00218         
00219         
00220 
00221         
00226         ReceiverBandMod::ReceiverBand getReceiverBand() const;
00227         
00228  
00229         
00230         
00240         void setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand);
00241                 
00242         
00243         
00244         
00245 
00246 
00247         
00248         // ===> Attribute numReceptor
00249         
00250         
00251         
00252 
00253         
00258         int getNumReceptor() const;
00259         
00260  
00261         
00262         
00270         void setNumReceptor (int numReceptor);
00271                 
00272         
00273         
00274         
00275 
00276 
00277         
00278         // ===> Attribute polarizationTypes
00279         
00280         
00281         
00282 
00283         
00288         vector<PolarizationTypeMod::PolarizationType > getPolarizationTypes() const;
00289         
00290  
00291         
00292         
00300         void setPolarizationTypes (vector<PolarizationTypeMod::PolarizationType > polarizationTypes);
00301                 
00302         
00303         
00304         
00305 
00306 
00307         
00308         // ===> Attribute startValidTime
00309         
00310         
00311         
00312 
00313         
00318         ArrayTime getStartValidTime() const;
00319         
00320  
00321         
00322         
00330         void setStartValidTime (ArrayTime startValidTime);
00331                 
00332         
00333         
00334         
00335 
00336 
00337         
00338         // ===> Attribute endValidTime
00339         
00340         
00341         
00342 
00343         
00348         ArrayTime getEndValidTime() const;
00349         
00350  
00351         
00352         
00360         void setEndValidTime (ArrayTime endValidTime);
00361                 
00362         
00363         
00364         
00365 
00366 
00367         
00368         // ===> Attribute frequencyRange
00369         
00370         
00371         
00372 
00373         
00378         vector<Frequency > getFrequencyRange() const;
00379         
00380  
00381         
00382         
00390         void setFrequencyRange (vector<Frequency > frequencyRange);
00391                 
00392         
00393         
00394         
00395 
00396 
00397         
00398         // ===> Attribute apertureEfficiency
00399         
00400         
00401         
00402 
00403         
00408         vector<float > getApertureEfficiency() const;
00409         
00410  
00411         
00412         
00420         void setApertureEfficiency (vector<float > apertureEfficiency);
00421                 
00422         
00423         
00424         
00425 
00426 
00427         
00428         // ===> Attribute apertureEfficiencyError
00429         
00430         
00431         
00432 
00433         
00438         vector<float > getApertureEfficiencyError() const;
00439         
00440  
00441         
00442         
00450         void setApertureEfficiencyError (vector<float > apertureEfficiencyError);
00451                 
00452         
00453         
00454         
00455 
00456 
00457         
00458         // ===> Attribute correctionValidity, which is optional
00459         
00460         
00461         
00466         bool isCorrectionValidityExists() const;
00467         
00468 
00469         
00475         bool getCorrectionValidity() const;
00476         
00477  
00478         
00479         
00486         void setCorrectionValidity (bool correctionValidity);
00487                 
00488         
00489         
00490         
00494         void clearCorrectionValidity ();
00495         
00496 
00497 
00499         // Extrinsic Table Attributes //
00501         
00502         
00503         // ===> Attribute calDataId
00504         
00505         
00506         
00507 
00508         
00513         Tag getCalDataId() const;
00514         
00515  
00516         
00517         
00527         void setCalDataId (Tag calDataId);
00528                 
00529         
00530         
00531         
00532 
00533 
00534         
00535         // ===> Attribute calReductionId
00536         
00537         
00538         
00539 
00540         
00545         Tag getCalReductionId() const;
00546         
00547  
00548         
00549         
00559         void setCalReductionId (Tag calReductionId);
00560                 
00561         
00562         
00563         
00564 
00565 
00567         // Links //
00569         
00570         
00571 
00572         
00573                 
00580          CalDataRow* getCalDataUsingCalDataId();
00581          
00582 
00583         
00584 
00585         
00586 
00587         
00588                 
00595          CalReductionRow* getCalReductionUsingCalReductionId();
00596          
00597 
00598         
00599 
00600         
00601         
00602         
00632         bool compareNoAutoInc(string antennaName, AtmPhaseCorrectionMod::AtmPhaseCorrection atmPhaseCorrection, ReceiverBandMod::ReceiverBand receiverBand, Tag calDataId, Tag calReductionId, int numReceptor, vector<PolarizationTypeMod::PolarizationType > polarizationTypes, ArrayTime startValidTime, ArrayTime endValidTime, vector<Frequency > frequencyRange, vector<float > apertureEfficiency, vector<float > apertureEfficiencyError);
00633         
00634         
00635 
00636         
00656         bool compareRequiredValue(int numReceptor, vector<PolarizationTypeMod::PolarizationType > polarizationTypes, ArrayTime startValidTime, ArrayTime endValidTime, vector<Frequency > frequencyRange, vector<float > apertureEfficiency, vector<float > apertureEfficiencyError); 
00657                  
00658         
00667         bool equalByRequiredValue(CalAmpliRow* x) ;
00668         
00669 #ifndef WITHOUT_ACS
00670 
00674         CalAmpliRowIDL *toIDL() const;
00675 #endif
00676         
00677 #ifndef WITHOUT_ACS
00678 
00683         void setFromIDL (CalAmpliRowIDL x) ;
00684 #endif
00685         
00690         string toXML() const;
00691 
00698         void setFromXML (string rowDoc) ;       
00699 
00700 private:
00704         CalAmpliTable &table;
00708         bool hasBeenAdded;
00709 
00710         // This method is used by the Table class when this row is added to the table.
00711         void isAdded(bool added);
00712 
00713 
00722         CalAmpliRow (CalAmpliTable &table);
00723 
00741          CalAmpliRow (CalAmpliTable &table, CalAmpliRow &row);
00742                 
00744         // Intrinsic Table Attributes //
00746         
00747         
00748         // ===> Attribute antennaName
00749         
00750         
00751 
00752         string antennaName;
00753 
00754         
00755         
00756         
00757 
00758         
00759         // ===> Attribute atmPhaseCorrection
00760         
00761         
00762 
00763         AtmPhaseCorrectionMod::AtmPhaseCorrection atmPhaseCorrection;
00764 
00765         
00766         
00767         
00768 
00769         
00770         // ===> Attribute receiverBand
00771         
00772         
00773 
00774         ReceiverBandMod::ReceiverBand receiverBand;
00775 
00776         
00777         
00778         
00779 
00780         
00781         // ===> Attribute numReceptor
00782         
00783         
00784 
00785         int numReceptor;
00786 
00787         
00788         
00789         
00790 
00791         
00792         // ===> Attribute polarizationTypes
00793         
00794         
00795 
00796         vector<PolarizationTypeMod::PolarizationType > polarizationTypes;
00797 
00798         
00799         
00800         
00801 
00802         
00803         // ===> Attribute startValidTime
00804         
00805         
00806 
00807         ArrayTime startValidTime;
00808 
00809         
00810         
00811         
00812 
00813         
00814         // ===> Attribute endValidTime
00815         
00816         
00817 
00818         ArrayTime endValidTime;
00819 
00820         
00821         
00822         
00823 
00824         
00825         // ===> Attribute frequencyRange
00826         
00827         
00828 
00829         vector<Frequency > frequencyRange;
00830 
00831         
00832         
00833         
00834 
00835         
00836         // ===> Attribute apertureEfficiency
00837         
00838         
00839 
00840         vector<float > apertureEfficiency;
00841 
00842         
00843         
00844         
00845 
00846         
00847         // ===> Attribute apertureEfficiencyError
00848         
00849         
00850 
00851         vector<float > apertureEfficiencyError;
00852 
00853         
00854         
00855         
00856 
00857         
00858         // ===> Attribute correctionValidity, which is optional
00859         
00860         
00861         bool correctionValidityExists;
00862         
00863 
00864         bool correctionValidity;
00865 
00866         
00867         
00868         
00869 
00871         // Extrinsic Table Attributes //
00873         
00874         
00875         // ===> Attribute calDataId
00876         
00877         
00878 
00879         Tag calDataId;
00880 
00881         
00882         
00883         
00884 
00885         
00886         // ===> Attribute calReductionId
00887         
00888         
00889 
00890         Tag calReductionId;
00891 
00892         
00893         
00894         
00895 
00897         // Links //
00899         
00900         
00901                 
00902 
00903          
00904 
00905         
00906 
00907         
00908                 
00909 
00910          
00911 
00912         
00913 
00914         
00916         // binary-deserialization material//
00918         map<string, CalAmpliAttributeFromBin> fromBinMethods;
00919 void antennaNameFromBin( EndianISStream& eiss);
00920 void atmPhaseCorrectionFromBin( EndianISStream& eiss);
00921 void receiverBandFromBin( EndianISStream& eiss);
00922 void calDataIdFromBin( EndianISStream& eiss);
00923 void calReductionIdFromBin( EndianISStream& eiss);
00924 void numReceptorFromBin( EndianISStream& eiss);
00925 void polarizationTypesFromBin( EndianISStream& eiss);
00926 void startValidTimeFromBin( EndianISStream& eiss);
00927 void endValidTimeFromBin( EndianISStream& eiss);
00928 void frequencyRangeFromBin( EndianISStream& eiss);
00929 void apertureEfficiencyFromBin( EndianISStream& eiss);
00930 void apertureEfficiencyErrorFromBin( EndianISStream& eiss);
00931 
00932 void correctionValidityFromBin( EndianISStream& eiss);
00933         
00934         
00939          void toBin(EndianOSStream& eoss);
00940                  
00948          static CalAmpliRow* fromBin(EndianISStream& eiss, CalAmpliTable& table, const vector<string>& attributesSeq);   
00949 
00950 };
00951 
00952 } // End namespace asdm
00953 
00954 #endif /* CalAmpli_CLASS */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines