CalHolographyRow.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 CalHolographyRow.h
00032  */
00033  
00034 #ifndef CalHolographyRow_CLASS
00035 #define CalHolographyRow_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::CalHolographyRowIDL;
00047 #endif
00048 
00049 
00050 
00051 
00052 
00053 
00054 #include <ArrayTime.h>
00055 using  asdm::ArrayTime;
00056 
00057 #include <Temperature.h>
00058 using  asdm::Temperature;
00059 
00060 #include <Angle.h>
00061 using  asdm::Angle;
00062 
00063 #include <Tag.h>
00064 using  asdm::Tag;
00065 
00066 #include <Length.h>
00067 using  asdm::Length;
00068 
00069 #include <Frequency.h>
00070 using  asdm::Frequency;
00071 
00072 #include <EntityRef.h>
00073 using  asdm::EntityRef;
00074 
00075 
00076 
00077 
00078         
00079 
00080         
00081 #include "CAntennaMake.h"
00082 using namespace AntennaMakeMod;
00083         
00084 
00085         
00086 
00087         
00088 
00089         
00090 
00091         
00092 
00093         
00094 
00095         
00096 
00097         
00098 
00099         
00100 #include "CPolarizationType.h"
00101 using namespace PolarizationTypeMod;
00102         
00103 
00104         
00105 
00106         
00107 #include "CReceiverBand.h"
00108 using namespace ReceiverBandMod;
00109         
00110 
00111         
00112 
00113         
00114 
00115         
00116 
00117         
00118 
00119         
00120 
00121         
00122 
00123         
00124 
00125         
00126 
00127         
00128 
00129         
00130 
00131         
00132 
00133         
00134 
00135         
00136 
00137 
00138 
00139 #include <ConversionException.h>
00140 #include <NoSuchRow.h>
00141 #include <IllegalAccessException.h>
00142 
00143 
00144 /*\file CalHolography.h
00145     \brief Generated from model's revision "1.55", branch "HEAD"
00146 */
00147 
00148 namespace asdm {
00149 
00150 //class asdm::CalHolographyTable;
00151 
00152 
00153 // class asdm::CalReductionRow;
00154 class CalReductionRow;
00155 
00156 // class asdm::CalDataRow;
00157 class CalDataRow;
00158         
00159 
00160 class CalHolographyRow;
00161 typedef void (CalHolographyRow::*CalHolographyAttributeFromBin) (EndianISStream& eiss);
00162 
00169 class CalHolographyRow {
00170 friend class asdm::CalHolographyTable;
00171 
00172 public:
00173 
00174         virtual ~CalHolographyRow();
00175 
00179         CalHolographyTable &getTable() const;
00180         
00185         bool isAdded() const;
00186                 
00188         // Intrinsic Table Attributes //
00190         
00191         
00192         // ===> Attribute antennaName
00193         
00194         
00195         
00196 
00197         
00202         string getAntennaName() const;
00203         
00204  
00205         
00206         
00216         void setAntennaName (string antennaName);
00217                 
00218         
00219         
00220         
00221 
00222 
00223         
00224         // ===> Attribute antennaMake
00225         
00226         
00227         
00228 
00229         
00234         AntennaMakeMod::AntennaMake getAntennaMake() const;
00235         
00236  
00237         
00238         
00246         void setAntennaMake (AntennaMakeMod::AntennaMake antennaMake);
00247                 
00248         
00249         
00250         
00251 
00252 
00253         
00254         // ===> Attribute startValidTime
00255         
00256         
00257         
00258 
00259         
00264         ArrayTime getStartValidTime() const;
00265         
00266  
00267         
00268         
00276         void setStartValidTime (ArrayTime startValidTime);
00277                 
00278         
00279         
00280         
00281 
00282 
00283         
00284         // ===> Attribute endValidTime
00285         
00286         
00287         
00288 
00289         
00294         ArrayTime getEndValidTime() const;
00295         
00296  
00297         
00298         
00306         void setEndValidTime (ArrayTime endValidTime);
00307                 
00308         
00309         
00310         
00311 
00312 
00313         
00314         // ===> Attribute ambientTemperature
00315         
00316         
00317         
00318 
00319         
00324         Temperature getAmbientTemperature() const;
00325         
00326  
00327         
00328         
00336         void setAmbientTemperature (Temperature ambientTemperature);
00337                 
00338         
00339         
00340         
00341 
00342 
00343         
00344         // ===> Attribute focusPosition
00345         
00346         
00347         
00348 
00349         
00354         vector<Length > getFocusPosition() const;
00355         
00356  
00357         
00358         
00366         void setFocusPosition (vector<Length > focusPosition);
00367                 
00368         
00369         
00370         
00371 
00372 
00373         
00374         // ===> Attribute frequencyRange
00375         
00376         
00377         
00378 
00379         
00384         vector<Frequency > getFrequencyRange() const;
00385         
00386  
00387         
00388         
00396         void setFrequencyRange (vector<Frequency > frequencyRange);
00397                 
00398         
00399         
00400         
00401 
00402 
00403         
00404         // ===> Attribute illuminationTaper
00405         
00406         
00407         
00408 
00409         
00414         double getIlluminationTaper() const;
00415         
00416  
00417         
00418         
00426         void setIlluminationTaper (double illuminationTaper);
00427                 
00428         
00429         
00430         
00431 
00432 
00433         
00434         // ===> Attribute numReceptor
00435         
00436         
00437         
00438 
00439         
00444         int getNumReceptor() const;
00445         
00446  
00447         
00448         
00456         void setNumReceptor (int numReceptor);
00457                 
00458         
00459         
00460         
00461 
00462 
00463         
00464         // ===> Attribute polarizationTypes
00465         
00466         
00467         
00468 
00469         
00474         vector<PolarizationTypeMod::PolarizationType > getPolarizationTypes() const;
00475         
00476  
00477         
00478         
00486         void setPolarizationTypes (vector<PolarizationTypeMod::PolarizationType > polarizationTypes);
00487                 
00488         
00489         
00490         
00491 
00492 
00493         
00494         // ===> Attribute numPanelModes
00495         
00496         
00497         
00498 
00499         
00504         int getNumPanelModes() const;
00505         
00506  
00507         
00508         
00516         void setNumPanelModes (int numPanelModes);
00517                 
00518         
00519         
00520         
00521 
00522 
00523         
00524         // ===> Attribute receiverBand
00525         
00526         
00527         
00528 
00529         
00534         ReceiverBandMod::ReceiverBand getReceiverBand() const;
00535         
00536  
00537         
00538         
00546         void setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand);
00547                 
00548         
00549         
00550         
00551 
00552 
00553         
00554         // ===> Attribute beamMapUID
00555         
00556         
00557         
00558 
00559         
00564         EntityRef getBeamMapUID() const;
00565         
00566  
00567         
00568         
00576         void setBeamMapUID (EntityRef beamMapUID);
00577                 
00578         
00579         
00580         
00581 
00582 
00583         
00584         // ===> Attribute rawRMS
00585         
00586         
00587         
00588 
00589         
00594         Length getRawRMS() const;
00595         
00596  
00597         
00598         
00606         void setRawRMS (Length rawRMS);
00607                 
00608         
00609         
00610         
00611 
00612 
00613         
00614         // ===> Attribute weightedRMS
00615         
00616         
00617         
00618 
00619         
00624         Length getWeightedRMS() const;
00625         
00626  
00627         
00628         
00636         void setWeightedRMS (Length weightedRMS);
00637                 
00638         
00639         
00640         
00641 
00642 
00643         
00644         // ===> Attribute surfaceMapUID
00645         
00646         
00647         
00648 
00649         
00654         EntityRef getSurfaceMapUID() const;
00655         
00656  
00657         
00658         
00666         void setSurfaceMapUID (EntityRef surfaceMapUID);
00667                 
00668         
00669         
00670         
00671 
00672 
00673         
00674         // ===> Attribute direction
00675         
00676         
00677         
00678 
00679         
00684         vector<Angle > getDirection() const;
00685         
00686  
00687         
00688         
00696         void setDirection (vector<Angle > direction);
00697                 
00698         
00699         
00700         
00701 
00702 
00703         
00704         // ===> Attribute numScrew, which is optional
00705         
00706         
00707         
00712         bool isNumScrewExists() const;
00713         
00714 
00715         
00721         int getNumScrew() const;
00722         
00723  
00724         
00725         
00732         void setNumScrew (int numScrew);
00733                 
00734         
00735         
00736         
00740         void clearNumScrew ();
00741         
00742 
00743 
00744         
00745         // ===> Attribute screwName, which is optional
00746         
00747         
00748         
00753         bool isScrewNameExists() const;
00754         
00755 
00756         
00762         vector<string > getScrewName() const;
00763         
00764  
00765         
00766         
00773         void setScrewName (vector<string > screwName);
00774                 
00775         
00776         
00777         
00781         void clearScrewName ();
00782         
00783 
00784 
00785         
00786         // ===> Attribute screwMotion, which is optional
00787         
00788         
00789         
00794         bool isScrewMotionExists() const;
00795         
00796 
00797         
00803         vector<Length > getScrewMotion() const;
00804         
00805  
00806         
00807         
00814         void setScrewMotion (vector<Length > screwMotion);
00815                 
00816         
00817         
00818         
00822         void clearScrewMotion ();
00823         
00824 
00825 
00826         
00827         // ===> Attribute screwMotionError, which is optional
00828         
00829         
00830         
00835         bool isScrewMotionErrorExists() const;
00836         
00837 
00838         
00844         vector<Length > getScrewMotionError() const;
00845         
00846  
00847         
00848         
00855         void setScrewMotionError (vector<Length > screwMotionError);
00856                 
00857         
00858         
00859         
00863         void clearScrewMotionError ();
00864         
00865 
00866 
00867         
00868         // ===> Attribute gravCorrection, which is optional
00869         
00870         
00871         
00876         bool isGravCorrectionExists() const;
00877         
00878 
00879         
00885         bool getGravCorrection() const;
00886         
00887  
00888         
00889         
00896         void setGravCorrection (bool gravCorrection);
00897                 
00898         
00899         
00900         
00904         void clearGravCorrection ();
00905         
00906 
00907 
00908         
00909         // ===> Attribute gravOptRange, which is optional
00910         
00911         
00912         
00917         bool isGravOptRangeExists() const;
00918         
00919 
00920         
00926         vector<Angle > getGravOptRange() const;
00927         
00928  
00929         
00930         
00937         void setGravOptRange (vector<Angle > gravOptRange);
00938                 
00939         
00940         
00941         
00945         void clearGravOptRange ();
00946         
00947 
00948 
00949         
00950         // ===> Attribute tempCorrection, which is optional
00951         
00952         
00953         
00958         bool isTempCorrectionExists() const;
00959         
00960 
00961         
00967         bool getTempCorrection() const;
00968         
00969  
00970         
00971         
00978         void setTempCorrection (bool tempCorrection);
00979                 
00980         
00981         
00982         
00986         void clearTempCorrection ();
00987         
00988 
00989 
00990         
00991         // ===> Attribute tempOptRange, which is optional
00992         
00993         
00994         
00999         bool isTempOptRangeExists() const;
01000         
01001 
01002         
01008         vector<Temperature > getTempOptRange() const;
01009         
01010  
01011         
01012         
01019         void setTempOptRange (vector<Temperature > tempOptRange);
01020                 
01021         
01022         
01023         
01027         void clearTempOptRange ();
01028         
01029 
01030 
01032         // Extrinsic Table Attributes //
01034         
01035         
01036         // ===> Attribute calDataId
01037         
01038         
01039         
01040 
01041         
01046         Tag getCalDataId() const;
01047         
01048  
01049         
01050         
01060         void setCalDataId (Tag calDataId);
01061                 
01062         
01063         
01064         
01065 
01066 
01067         
01068         // ===> Attribute calReductionId
01069         
01070         
01071         
01072 
01073         
01078         Tag getCalReductionId() const;
01079         
01080  
01081         
01082         
01092         void setCalReductionId (Tag calReductionId);
01093                 
01094         
01095         
01096         
01097 
01098 
01100         // Links //
01102         
01103         
01104 
01105         
01106                 
01113          CalReductionRow* getCalReductionUsingCalReductionId();
01114          
01115 
01116         
01117 
01118         
01119 
01120         
01121                 
01128          CalDataRow* getCalDataUsingCalDataId();
01129          
01130 
01131         
01132 
01133         
01134         
01135         
01179         bool compareNoAutoInc(string antennaName, Tag calDataId, Tag calReductionId, AntennaMakeMod::AntennaMake antennaMake, ArrayTime startValidTime, ArrayTime endValidTime, Temperature ambientTemperature, vector<Length > focusPosition, vector<Frequency > frequencyRange, double illuminationTaper, int numReceptor, vector<PolarizationTypeMod::PolarizationType > polarizationTypes, int numPanelModes, ReceiverBandMod::ReceiverBand receiverBand, EntityRef beamMapUID, Length rawRMS, Length weightedRMS, EntityRef surfaceMapUID, vector<Angle > direction);
01180         
01181         
01182 
01183         
01221         bool compareRequiredValue(AntennaMakeMod::AntennaMake antennaMake, ArrayTime startValidTime, ArrayTime endValidTime, Temperature ambientTemperature, vector<Length > focusPosition, vector<Frequency > frequencyRange, double illuminationTaper, int numReceptor, vector<PolarizationTypeMod::PolarizationType > polarizationTypes, int numPanelModes, ReceiverBandMod::ReceiverBand receiverBand, EntityRef beamMapUID, Length rawRMS, Length weightedRMS, EntityRef surfaceMapUID, vector<Angle > direction); 
01222                  
01223         
01232         bool equalByRequiredValue(CalHolographyRow* x) ;
01233         
01234 #ifndef WITHOUT_ACS
01235 
01239         CalHolographyRowIDL *toIDL() const;
01240 #endif
01241         
01242 #ifndef WITHOUT_ACS
01243 
01248         void setFromIDL (CalHolographyRowIDL x) ;
01249 #endif
01250         
01255         string toXML() const;
01256 
01263         void setFromXML (string rowDoc) ;       
01264 
01265 private:
01269         CalHolographyTable &table;
01273         bool hasBeenAdded;
01274 
01275         // This method is used by the Table class when this row is added to the table.
01276         void isAdded(bool added);
01277 
01278 
01287         CalHolographyRow (CalHolographyTable &table);
01288 
01306          CalHolographyRow (CalHolographyTable &table, CalHolographyRow &row);
01307                 
01309         // Intrinsic Table Attributes //
01311         
01312         
01313         // ===> Attribute antennaName
01314         
01315         
01316 
01317         string antennaName;
01318 
01319         
01320         
01321         
01322 
01323         
01324         // ===> Attribute antennaMake
01325         
01326         
01327 
01328         AntennaMakeMod::AntennaMake antennaMake;
01329 
01330         
01331         
01332         
01333 
01334         
01335         // ===> Attribute startValidTime
01336         
01337         
01338 
01339         ArrayTime startValidTime;
01340 
01341         
01342         
01343         
01344 
01345         
01346         // ===> Attribute endValidTime
01347         
01348         
01349 
01350         ArrayTime endValidTime;
01351 
01352         
01353         
01354         
01355 
01356         
01357         // ===> Attribute ambientTemperature
01358         
01359         
01360 
01361         Temperature ambientTemperature;
01362 
01363         
01364         
01365         
01366 
01367         
01368         // ===> Attribute focusPosition
01369         
01370         
01371 
01372         vector<Length > focusPosition;
01373 
01374         
01375         
01376         
01377 
01378         
01379         // ===> Attribute frequencyRange
01380         
01381         
01382 
01383         vector<Frequency > frequencyRange;
01384 
01385         
01386         
01387         
01388 
01389         
01390         // ===> Attribute illuminationTaper
01391         
01392         
01393 
01394         double illuminationTaper;
01395 
01396         
01397         
01398         
01399 
01400         
01401         // ===> Attribute numReceptor
01402         
01403         
01404 
01405         int numReceptor;
01406 
01407         
01408         
01409         
01410 
01411         
01412         // ===> Attribute polarizationTypes
01413         
01414         
01415 
01416         vector<PolarizationTypeMod::PolarizationType > polarizationTypes;
01417 
01418         
01419         
01420         
01421 
01422         
01423         // ===> Attribute numPanelModes
01424         
01425         
01426 
01427         int numPanelModes;
01428 
01429         
01430         
01431         
01432 
01433         
01434         // ===> Attribute receiverBand
01435         
01436         
01437 
01438         ReceiverBandMod::ReceiverBand receiverBand;
01439 
01440         
01441         
01442         
01443 
01444         
01445         // ===> Attribute beamMapUID
01446         
01447         
01448 
01449         EntityRef beamMapUID;
01450 
01451         
01452         
01453         
01454 
01455         
01456         // ===> Attribute rawRMS
01457         
01458         
01459 
01460         Length rawRMS;
01461 
01462         
01463         
01464         
01465 
01466         
01467         // ===> Attribute weightedRMS
01468         
01469         
01470 
01471         Length weightedRMS;
01472 
01473         
01474         
01475         
01476 
01477         
01478         // ===> Attribute surfaceMapUID
01479         
01480         
01481 
01482         EntityRef surfaceMapUID;
01483 
01484         
01485         
01486         
01487 
01488         
01489         // ===> Attribute direction
01490         
01491         
01492 
01493         vector<Angle > direction;
01494 
01495         
01496         
01497         
01498 
01499         
01500         // ===> Attribute numScrew, which is optional
01501         
01502         
01503         bool numScrewExists;
01504         
01505 
01506         int numScrew;
01507 
01508         
01509         
01510         
01511 
01512         
01513         // ===> Attribute screwName, which is optional
01514         
01515         
01516         bool screwNameExists;
01517         
01518 
01519         vector<string > screwName;
01520 
01521         
01522         
01523         
01524 
01525         
01526         // ===> Attribute screwMotion, which is optional
01527         
01528         
01529         bool screwMotionExists;
01530         
01531 
01532         vector<Length > screwMotion;
01533 
01534         
01535         
01536         
01537 
01538         
01539         // ===> Attribute screwMotionError, which is optional
01540         
01541         
01542         bool screwMotionErrorExists;
01543         
01544 
01545         vector<Length > screwMotionError;
01546 
01547         
01548         
01549         
01550 
01551         
01552         // ===> Attribute gravCorrection, which is optional
01553         
01554         
01555         bool gravCorrectionExists;
01556         
01557 
01558         bool gravCorrection;
01559 
01560         
01561         
01562         
01563 
01564         
01565         // ===> Attribute gravOptRange, which is optional
01566         
01567         
01568         bool gravOptRangeExists;
01569         
01570 
01571         vector<Angle > gravOptRange;
01572 
01573         
01574         
01575         
01576 
01577         
01578         // ===> Attribute tempCorrection, which is optional
01579         
01580         
01581         bool tempCorrectionExists;
01582         
01583 
01584         bool tempCorrection;
01585 
01586         
01587         
01588         
01589 
01590         
01591         // ===> Attribute tempOptRange, which is optional
01592         
01593         
01594         bool tempOptRangeExists;
01595         
01596 
01597         vector<Temperature > tempOptRange;
01598 
01599         
01600         
01601         
01602 
01604         // Extrinsic Table Attributes //
01606         
01607         
01608         // ===> Attribute calDataId
01609         
01610         
01611 
01612         Tag calDataId;
01613 
01614         
01615         
01616         
01617 
01618         
01619         // ===> Attribute calReductionId
01620         
01621         
01622 
01623         Tag calReductionId;
01624 
01625         
01626         
01627         
01628 
01630         // Links //
01632         
01633         
01634                 
01635 
01636          
01637 
01638         
01639 
01640         
01641                 
01642 
01643          
01644 
01645         
01646 
01647         
01649         // binary-deserialization material//
01651         map<string, CalHolographyAttributeFromBin> fromBinMethods;
01652 void antennaNameFromBin( EndianISStream& eiss);
01653 void calDataIdFromBin( EndianISStream& eiss);
01654 void calReductionIdFromBin( EndianISStream& eiss);
01655 void antennaMakeFromBin( EndianISStream& eiss);
01656 void startValidTimeFromBin( EndianISStream& eiss);
01657 void endValidTimeFromBin( EndianISStream& eiss);
01658 void ambientTemperatureFromBin( EndianISStream& eiss);
01659 void focusPositionFromBin( EndianISStream& eiss);
01660 void frequencyRangeFromBin( EndianISStream& eiss);
01661 void illuminationTaperFromBin( EndianISStream& eiss);
01662 void numReceptorFromBin( EndianISStream& eiss);
01663 void polarizationTypesFromBin( EndianISStream& eiss);
01664 void numPanelModesFromBin( EndianISStream& eiss);
01665 void receiverBandFromBin( EndianISStream& eiss);
01666 void beamMapUIDFromBin( EndianISStream& eiss);
01667 void rawRMSFromBin( EndianISStream& eiss);
01668 void weightedRMSFromBin( EndianISStream& eiss);
01669 void surfaceMapUIDFromBin( EndianISStream& eiss);
01670 void directionFromBin( EndianISStream& eiss);
01671 
01672 void numScrewFromBin( EndianISStream& eiss);
01673 void screwNameFromBin( EndianISStream& eiss);
01674 void screwMotionFromBin( EndianISStream& eiss);
01675 void screwMotionErrorFromBin( EndianISStream& eiss);
01676 void gravCorrectionFromBin( EndianISStream& eiss);
01677 void gravOptRangeFromBin( EndianISStream& eiss);
01678 void tempCorrectionFromBin( EndianISStream& eiss);
01679 void tempOptRangeFromBin( EndianISStream& eiss);
01680         
01681         
01686          void toBin(EndianOSStream& eoss);
01687                  
01695          static CalHolographyRow* fromBin(EndianISStream& eiss, CalHolographyTable& table, const vector<string>& attributesSeq);         
01696 
01697 };
01698 
01699 } // End namespace asdm
01700 
01701 #endif /* CalHolography_CLASS */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines