casa  $Rev:20696$
CalPointingModelRow.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 CalPointingModelRow.h
00032  */
00033  
00034 #ifndef CalPointingModelRow_CLASS
00035 #define CalPointingModelRow_CLASS
00036 
00037 #include <vector>
00038 #include <string>
00039 #include <set>
00040 
00041 #ifndef WITHOUT_ACS
00042 #include <asdmIDLC.h>
00043 #endif
00044 
00045 
00046 
00047 
00048 
00049 
00050          
00051 #include <ArrayTime.h>
00052         
00053 
00054          
00055 #include <Angle.h>
00056         
00057 
00058          
00059 #include <Tag.h>
00060         
00061 
00062 
00063 
00064 
00065         
00066 
00067         
00068 #include "CReceiverBand.h"
00069         
00070 
00071         
00072 
00073         
00074 
00075         
00076 #include "CAntennaMake.h"
00077         
00078 
00079         
00080 #include "CPointingModelMode.h"
00081         
00082 
00083         
00084 #include "CPolarizationType.h"
00085         
00086 
00087         
00088 
00089         
00090 
00091         
00092 
00093         
00094 
00095         
00096 
00097         
00098 
00099         
00100 
00101         
00102 
00103         
00104 
00105         
00106 
00107         
00108 
00109 
00110 
00111 #include <ConversionException.h>
00112 #include <NoSuchRow.h>
00113 #include <IllegalAccessException.h>
00114 
00115 #include <RowTransformer.h>
00116 //#include <TableStreamReader.h>
00117 
00118 /*\file CalPointingModel.h
00119     \brief Generated from model's revision "1.62", branch "HEAD"
00120 */
00121 
00122 namespace asdm {
00123 
00124 //class asdm::CalPointingModelTable;
00125 
00126 
00127 // class asdm::CalDataRow;
00128 class CalDataRow;
00129 
00130 // class asdm::CalReductionRow;
00131 class CalReductionRow;
00132         
00133 
00134 class CalPointingModelRow;
00135 typedef void (CalPointingModelRow::*CalPointingModelAttributeFromBin) (EndianIStream& eis);
00136 typedef void (CalPointingModelRow::*CalPointingModelAttributeFromText) (const string& s);
00137 
00144 class CalPointingModelRow {
00145 friend class asdm::CalPointingModelTable;
00146 friend class asdm::RowTransformer<CalPointingModelRow>;
00147 //friend class asdm::TableStreamReader<CalPointingModelTable, CalPointingModelRow>;
00148 
00149 public:
00150 
00151         virtual ~CalPointingModelRow();
00152 
00156         CalPointingModelTable &getTable() const;
00157         
00162         bool isAdded() const;
00163                 
00165         // Intrinsic Table Attributes //
00167         
00168         
00169         // ===> Attribute antennaName
00170         
00171         
00172         
00173 
00174         
00179         string getAntennaName() const;
00180         
00181  
00182         
00183         
00193         void setAntennaName (string antennaName);
00194                 
00195         
00196         
00197         
00198 
00199 
00200         
00201         // ===> Attribute receiverBand
00202         
00203         
00204         
00205 
00206         
00211         ReceiverBandMod::ReceiverBand getReceiverBand() const;
00212         
00213  
00214         
00215         
00225         void setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand);
00226                 
00227         
00228         
00229         
00230 
00231 
00232         
00233         // ===> Attribute startValidTime
00234         
00235         
00236         
00237 
00238         
00243         ArrayTime getStartValidTime() const;
00244         
00245  
00246         
00247         
00255         void setStartValidTime (ArrayTime startValidTime);
00256                 
00257         
00258         
00259         
00260 
00261 
00262         
00263         // ===> Attribute endValidTime
00264         
00265         
00266         
00267 
00268         
00273         ArrayTime getEndValidTime() const;
00274         
00275  
00276         
00277         
00285         void setEndValidTime (ArrayTime endValidTime);
00286                 
00287         
00288         
00289         
00290 
00291 
00292         
00293         // ===> Attribute antennaMake
00294         
00295         
00296         
00297 
00298         
00303         AntennaMakeMod::AntennaMake getAntennaMake() const;
00304         
00305  
00306         
00307         
00315         void setAntennaMake (AntennaMakeMod::AntennaMake antennaMake);
00316                 
00317         
00318         
00319         
00320 
00321 
00322         
00323         // ===> Attribute pointingModelMode
00324         
00325         
00326         
00327 
00328         
00333         PointingModelModeMod::PointingModelMode getPointingModelMode() const;
00334         
00335  
00336         
00337         
00345         void setPointingModelMode (PointingModelModeMod::PointingModelMode pointingModelMode);
00346                 
00347         
00348         
00349         
00350 
00351 
00352         
00353         // ===> Attribute polarizationType
00354         
00355         
00356         
00357 
00358         
00363         PolarizationTypeMod::PolarizationType getPolarizationType() const;
00364         
00365  
00366         
00367         
00375         void setPolarizationType (PolarizationTypeMod::PolarizationType polarizationType);
00376                 
00377         
00378         
00379         
00380 
00381 
00382         
00383         // ===> Attribute numCoeff
00384         
00385         
00386         
00387 
00388         
00393         int getNumCoeff() const;
00394         
00395  
00396         
00397         
00405         void setNumCoeff (int numCoeff);
00406                 
00407         
00408         
00409         
00410 
00411 
00412         
00413         // ===> Attribute coeffName
00414         
00415         
00416         
00417 
00418         
00423         vector<string > getCoeffName() const;
00424         
00425  
00426         
00427         
00435         void setCoeffName (vector<string > coeffName);
00436                 
00437         
00438         
00439         
00440 
00441 
00442         
00443         // ===> Attribute coeffVal
00444         
00445         
00446         
00447 
00448         
00453         vector<float > getCoeffVal() const;
00454         
00455  
00456         
00457         
00465         void setCoeffVal (vector<float > coeffVal);
00466                 
00467         
00468         
00469         
00470 
00471 
00472         
00473         // ===> Attribute coeffError
00474         
00475         
00476         
00477 
00478         
00483         vector<float > getCoeffError() const;
00484         
00485  
00486         
00487         
00495         void setCoeffError (vector<float > coeffError);
00496                 
00497         
00498         
00499         
00500 
00501 
00502         
00503         // ===> Attribute coeffFixed
00504         
00505         
00506         
00507 
00508         
00513         vector<bool > getCoeffFixed() const;
00514         
00515  
00516         
00517         
00525         void setCoeffFixed (vector<bool > coeffFixed);
00526                 
00527         
00528         
00529         
00530 
00531 
00532         
00533         // ===> Attribute azimuthRMS
00534         
00535         
00536         
00537 
00538         
00543         Angle getAzimuthRMS() const;
00544         
00545  
00546         
00547         
00555         void setAzimuthRMS (Angle azimuthRMS);
00556                 
00557         
00558         
00559         
00560 
00561 
00562         
00563         // ===> Attribute elevationRms
00564         
00565         
00566         
00567 
00568         
00573         Angle getElevationRms() const;
00574         
00575  
00576         
00577         
00585         void setElevationRms (Angle elevationRms);
00586                 
00587         
00588         
00589         
00590 
00591 
00592         
00593         // ===> Attribute skyRMS
00594         
00595         
00596         
00597 
00598         
00603         Angle getSkyRMS() const;
00604         
00605  
00606         
00607         
00615         void setSkyRMS (Angle skyRMS);
00616                 
00617         
00618         
00619         
00620 
00621 
00622         
00623         // ===> Attribute reducedChiSquared
00624         
00625         
00626         
00627 
00628         
00633         double getReducedChiSquared() const;
00634         
00635  
00636         
00637         
00645         void setReducedChiSquared (double reducedChiSquared);
00646                 
00647         
00648         
00649         
00650 
00651 
00652         
00653         // ===> Attribute numObs, which is optional
00654         
00655         
00656         
00661         bool isNumObsExists() const;
00662         
00663 
00664         
00670         int getNumObs() const;
00671         
00672  
00673         
00674         
00681         void setNumObs (int numObs);
00682                 
00683         
00684         
00685         
00689         void clearNumObs ();
00690         
00691 
00692 
00693         
00694         // ===> Attribute coeffFormula, which is optional
00695         
00696         
00697         
00702         bool isCoeffFormulaExists() const;
00703         
00704 
00705         
00711         vector<string > getCoeffFormula() const;
00712         
00713  
00714         
00715         
00722         void setCoeffFormula (vector<string > coeffFormula);
00723                 
00724         
00725         
00726         
00730         void clearCoeffFormula ();
00731         
00732 
00733 
00735         // Extrinsic Table Attributes //
00737         
00738         
00739         // ===> Attribute calDataId
00740         
00741         
00742         
00743 
00744         
00749         Tag getCalDataId() const;
00750         
00751  
00752         
00753         
00763         void setCalDataId (Tag calDataId);
00764                 
00765         
00766         
00767         
00768 
00769 
00770         
00771         // ===> Attribute calReductionId
00772         
00773         
00774         
00775 
00776         
00781         Tag getCalReductionId() const;
00782         
00783  
00784         
00785         
00795         void setCalReductionId (Tag calReductionId);
00796                 
00797         
00798         
00799         
00800 
00801 
00803         // Links //
00805         
00806         
00807 
00808         
00809                 
00816          CalDataRow* getCalDataUsingCalDataId();
00817          
00818 
00819         
00820 
00821         
00822 
00823         
00824                 
00831          CalReductionRow* getCalReductionUsingCalReductionId();
00832          
00833 
00834         
00835 
00836         
00837         
00838         
00880         bool compareNoAutoInc(string antennaName, ReceiverBandMod::ReceiverBand receiverBand, Tag calDataId, Tag calReductionId, ArrayTime startValidTime, ArrayTime endValidTime, AntennaMakeMod::AntennaMake antennaMake, PointingModelModeMod::PointingModelMode pointingModelMode, PolarizationTypeMod::PolarizationType polarizationType, int numCoeff, vector<string > coeffName, vector<float > coeffVal, vector<float > coeffError, vector<bool > coeffFixed, Angle azimuthRMS, Angle elevationRms, Angle skyRMS, double reducedChiSquared);
00881         
00882         
00883 
00884         
00918         bool compareRequiredValue(ArrayTime startValidTime, ArrayTime endValidTime, AntennaMakeMod::AntennaMake antennaMake, PointingModelModeMod::PointingModelMode pointingModelMode, PolarizationTypeMod::PolarizationType polarizationType, int numCoeff, vector<string > coeffName, vector<float > coeffVal, vector<float > coeffError, vector<bool > coeffFixed, Angle azimuthRMS, Angle elevationRms, Angle skyRMS, double reducedChiSquared); 
00919                  
00920         
00929         bool equalByRequiredValue(CalPointingModelRow* x) ;
00930         
00931 #ifndef WITHOUT_ACS
00932 
00936         asdmIDL::CalPointingModelRowIDL *toIDL() const;
00937 #endif
00938         
00939 #ifndef WITHOUT_ACS
00940 
00945         void setFromIDL (asdmIDL::CalPointingModelRowIDL x) ;
00946 #endif
00947         
00952         std::string toXML() const;
00953 
00960         void setFromXML (std::string rowDoc) ;
00961 
00964         // binary-deserialization material from an EndianIStream  //
00966 
00967         std::map<std::string, CalPointingModelAttributeFromBin> fromBinMethods;
00968 void antennaNameFromBin( EndianIStream& eis);
00969 void receiverBandFromBin( EndianIStream& eis);
00970 void calDataIdFromBin( EndianIStream& eis);
00971 void calReductionIdFromBin( EndianIStream& eis);
00972 void startValidTimeFromBin( EndianIStream& eis);
00973 void endValidTimeFromBin( EndianIStream& eis);
00974 void antennaMakeFromBin( EndianIStream& eis);
00975 void pointingModelModeFromBin( EndianIStream& eis);
00976 void polarizationTypeFromBin( EndianIStream& eis);
00977 void numCoeffFromBin( EndianIStream& eis);
00978 void coeffNameFromBin( EndianIStream& eis);
00979 void coeffValFromBin( EndianIStream& eis);
00980 void coeffErrorFromBin( EndianIStream& eis);
00981 void coeffFixedFromBin( EndianIStream& eis);
00982 void azimuthRMSFromBin( EndianIStream& eis);
00983 void elevationRmsFromBin( EndianIStream& eis);
00984 void skyRMSFromBin( EndianIStream& eis);
00985 void reducedChiSquaredFromBin( EndianIStream& eis);
00986 
00987 void numObsFromBin( EndianIStream& eis);
00988 void coeffFormulaFromBin( EndianIStream& eis);
00989 
00990 
00998          static CalPointingModelRow* fromBin(EndianIStream& eis, CalPointingModelTable& table, const std::vector<std::string>& attributesSeq);   
00999  
01006          void fromText(const std::string& attributeName, const std::string&  t);
01008 
01009 private:
01013         CalPointingModelTable &table;
01017         bool hasBeenAdded;
01018 
01019         // This method is used by the Table class when this row is added to the table.
01020         void isAdded(bool added);
01021 
01022 
01031         CalPointingModelRow (CalPointingModelTable &table);
01032 
01050          CalPointingModelRow (CalPointingModelTable &table, CalPointingModelRow &row);
01051                 
01053         // Intrinsic Table Attributes //
01055         
01056         
01057         // ===> Attribute antennaName
01058         
01059         
01060 
01061         string antennaName;
01062 
01063         
01064         
01065         
01066 
01067         
01068         // ===> Attribute receiverBand
01069         
01070         
01071 
01072         ReceiverBandMod::ReceiverBand receiverBand;
01073 
01074         
01075         
01076         
01077 
01078         
01079         // ===> Attribute startValidTime
01080         
01081         
01082 
01083         ArrayTime startValidTime;
01084 
01085         
01086         
01087         
01088 
01089         
01090         // ===> Attribute endValidTime
01091         
01092         
01093 
01094         ArrayTime endValidTime;
01095 
01096         
01097         
01098         
01099 
01100         
01101         // ===> Attribute antennaMake
01102         
01103         
01104 
01105         AntennaMakeMod::AntennaMake antennaMake;
01106 
01107         
01108         
01109         
01110 
01111         
01112         // ===> Attribute pointingModelMode
01113         
01114         
01115 
01116         PointingModelModeMod::PointingModelMode pointingModelMode;
01117 
01118         
01119         
01120         
01121 
01122         
01123         // ===> Attribute polarizationType
01124         
01125         
01126 
01127         PolarizationTypeMod::PolarizationType polarizationType;
01128 
01129         
01130         
01131         
01132 
01133         
01134         // ===> Attribute numCoeff
01135         
01136         
01137 
01138         int numCoeff;
01139 
01140         
01141         
01142         
01143 
01144         
01145         // ===> Attribute coeffName
01146         
01147         
01148 
01149         vector<string > coeffName;
01150 
01151         
01152         
01153         
01154 
01155         
01156         // ===> Attribute coeffVal
01157         
01158         
01159 
01160         vector<float > coeffVal;
01161 
01162         
01163         
01164         
01165 
01166         
01167         // ===> Attribute coeffError
01168         
01169         
01170 
01171         vector<float > coeffError;
01172 
01173         
01174         
01175         
01176 
01177         
01178         // ===> Attribute coeffFixed
01179         
01180         
01181 
01182         vector<bool > coeffFixed;
01183 
01184         
01185         
01186         
01187 
01188         
01189         // ===> Attribute azimuthRMS
01190         
01191         
01192 
01193         Angle azimuthRMS;
01194 
01195         
01196         
01197         
01198 
01199         
01200         // ===> Attribute elevationRms
01201         
01202         
01203 
01204         Angle elevationRms;
01205 
01206         
01207         
01208         
01209 
01210         
01211         // ===> Attribute skyRMS
01212         
01213         
01214 
01215         Angle skyRMS;
01216 
01217         
01218         
01219         
01220 
01221         
01222         // ===> Attribute reducedChiSquared
01223         
01224         
01225 
01226         double reducedChiSquared;
01227 
01228         
01229         
01230         
01231 
01232         
01233         // ===> Attribute numObs, which is optional
01234         
01235         
01236         bool numObsExists;
01237         
01238 
01239         int numObs;
01240 
01241         
01242         
01243         
01244 
01245         
01246         // ===> Attribute coeffFormula, which is optional
01247         
01248         
01249         bool coeffFormulaExists;
01250         
01251 
01252         vector<string > coeffFormula;
01253 
01254         
01255         
01256         
01257 
01259         // Extrinsic Table Attributes //
01261         
01262         
01263         // ===> Attribute calDataId
01264         
01265         
01266 
01267         Tag calDataId;
01268 
01269         
01270         
01271         
01272 
01273         
01274         // ===> Attribute calReductionId
01275         
01276         
01277 
01278         Tag calReductionId;
01279 
01280         
01281         
01282         
01283 
01285         // Links //
01287         
01288         
01289                 
01290 
01291          
01292 
01293         
01294 
01295         
01296                 
01297 
01298          
01299 
01300         
01301 
01302         
01303 /*
01305         // binary-deserialization material from an EndianIStream  //
01307         std::map<std::string, CalPointingModelAttributeFromBin> fromBinMethods;
01308 void antennaNameFromBin( EndianIStream& eis);
01309 void receiverBandFromBin( EndianIStream& eis);
01310 void calDataIdFromBin( EndianIStream& eis);
01311 void calReductionIdFromBin( EndianIStream& eis);
01312 void startValidTimeFromBin( EndianIStream& eis);
01313 void endValidTimeFromBin( EndianIStream& eis);
01314 void antennaMakeFromBin( EndianIStream& eis);
01315 void pointingModelModeFromBin( EndianIStream& eis);
01316 void polarizationTypeFromBin( EndianIStream& eis);
01317 void numCoeffFromBin( EndianIStream& eis);
01318 void coeffNameFromBin( EndianIStream& eis);
01319 void coeffValFromBin( EndianIStream& eis);
01320 void coeffErrorFromBin( EndianIStream& eis);
01321 void coeffFixedFromBin( EndianIStream& eis);
01322 void azimuthRMSFromBin( EndianIStream& eis);
01323 void elevationRmsFromBin( EndianIStream& eis);
01324 void skyRMSFromBin( EndianIStream& eis);
01325 void reducedChiSquaredFromBin( EndianIStream& eis);
01326 
01327 void numObsFromBin( EndianIStream& eis);
01328 void coeffFormulaFromBin( EndianIStream& eis);
01329 
01330 */
01331         
01333         // text-deserialization material //
01335         std::map<std::string, CalPointingModelAttributeFromText> fromTextMethods;
01336         
01337 void antennaNameFromText (const string & s);
01338         
01339         
01340 void receiverBandFromText (const string & s);
01341         
01342         
01343 void calDataIdFromText (const string & s);
01344         
01345         
01346 void calReductionIdFromText (const string & s);
01347         
01348         
01349 void startValidTimeFromText (const string & s);
01350         
01351         
01352 void endValidTimeFromText (const string & s);
01353         
01354         
01355 void antennaMakeFromText (const string & s);
01356         
01357         
01358 void pointingModelModeFromText (const string & s);
01359         
01360         
01361 void polarizationTypeFromText (const string & s);
01362         
01363         
01364 void numCoeffFromText (const string & s);
01365         
01366         
01367 void coeffNameFromText (const string & s);
01368         
01369         
01370 void coeffValFromText (const string & s);
01371         
01372         
01373 void coeffErrorFromText (const string & s);
01374         
01375         
01376 void coeffFixedFromText (const string & s);
01377         
01378         
01379 void azimuthRMSFromText (const string & s);
01380         
01381         
01382 void elevationRmsFromText (const string & s);
01383         
01384         
01385 void skyRMSFromText (const string & s);
01386         
01387         
01388 void reducedChiSquaredFromText (const string & s);
01389         
01390 
01391         
01392 void numObsFromText (const string & s);
01393         
01394         
01395 void coeffFormulaFromText (const string & s);
01396         
01397         
01398         
01403          void toBin(EndianOSStream& eoss);
01404                  
01414 };
01415 
01416 } // End namespace asdm
01417 
01418 #endif /* CalPointingModel_CLASS */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines