CalFluxRow.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 CalFluxRow.h
00032  */
00033  
00034 #ifndef CalFluxRow_CLASS
00035 #define CalFluxRow_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::CalFluxRowIDL;
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 
00080         
00081 
00082         
00083 
00084         
00085 
00086         
00087 
00088         
00089 #include "CStokesParameter.h"
00090 using namespace StokesParameterMod;
00091         
00092 
00093         
00094 
00095         
00096 
00097         
00098 
00099         
00100 
00101         
00102 
00103         
00104 
00105         
00106 #include "CFluxCalibrationMethod.h"
00107 using namespace FluxCalibrationMethodMod;
00108         
00109 
00110         
00111 
00112         
00113 #include "CSourceModel.h"
00114 using namespace SourceModelMod;
00115         
00116 
00117         
00118 
00119 
00120 
00121 using asdm::Angle;
00122 using asdm::AngularRate;
00123 using asdm::ArrayTime;
00124 using asdm::Complex;
00125 using asdm::Entity;
00126 using asdm::EntityId;
00127 using asdm::EntityRef;
00128 using asdm::Flux;
00129 using asdm::Frequency;
00130 using asdm::Humidity;
00131 using asdm::Interval;
00132 using asdm::Length;
00133 using asdm::Pressure;
00134 using asdm::Speed;
00135 using asdm::Tag;
00136 using asdm::Temperature;
00137 using asdm::ConversionException;
00138 using asdm::NoSuchRow;
00139 using asdm::IllegalAccessException;
00140 
00141 /*\file CalFlux.h
00142     \brief Generated from model's revision "1.46", branch "HEAD"
00143 */
00144 
00145 namespace asdm {
00146 
00147 //class asdm::CalFluxTable;
00148 
00149 
00150 // class asdm::CalDataRow;
00151 class CalDataRow;
00152 
00153 // class asdm::CalReductionRow;
00154 class CalReductionRow;
00155         
00156 
00163 class CalFluxRow {
00164 friend class asdm::CalFluxTable;
00165 
00166 public:
00167 
00168         virtual ~CalFluxRow();
00169 
00173         CalFluxTable &getTable() const;
00174         
00175 #ifndef WITHOUT_ACS
00176 
00180         CalFluxRowIDL *toIDL() const;
00181 #endif
00182         
00183 #ifndef WITHOUT_ACS
00184 
00188         void setFromIDL (CalFluxRowIDL x) throw(ConversionException);
00189 #endif
00190         
00195         string toXML() const;
00196 
00202         void setFromXML (string rowDoc) throw(ConversionException);
00203         
00205         // Intrinsic Table Attributes //
00207         
00208         
00209         // ===> Attribute sourceName
00210         
00211         
00212         
00213 
00214         
00219         string getSourceName() const;
00220         
00221  
00222         
00223         
00233         void setSourceName (string sourceName);
00234                 
00235         
00236         
00237         
00238 
00239 
00240         
00241         // ===> Attribute numFrequency
00242         
00243         
00244         
00245 
00246         
00251         int getNumFrequency() const;
00252         
00253  
00254         
00255         
00263         void setNumFrequency (int numFrequency);
00264                 
00265         
00266         
00267         
00268 
00269 
00270         
00271         // ===> Attribute numStokes
00272         
00273         
00274         
00275 
00276         
00281         int getNumStokes() const;
00282         
00283  
00284         
00285         
00293         void setNumStokes (int numStokes);
00294                 
00295         
00296         
00297         
00298 
00299 
00300         
00301         // ===> Attribute startValidTime
00302         
00303         
00304         
00305 
00306         
00311         ArrayTime getStartValidTime() const;
00312         
00313  
00314         
00315         
00323         void setStartValidTime (ArrayTime startValidTime);
00324                 
00325         
00326         
00327         
00328 
00329 
00330         
00331         // ===> Attribute endValidTime
00332         
00333         
00334         
00335 
00336         
00341         ArrayTime getEndValidTime() const;
00342         
00343  
00344         
00345         
00353         void setEndValidTime (ArrayTime endValidTime);
00354                 
00355         
00356         
00357         
00358 
00359 
00360         
00361         // ===> Attribute stokes
00362         
00363         
00364         
00365 
00366         
00371         vector<StokesParameterMod::StokesParameter > getStokes() const;
00372         
00373  
00374         
00375         
00383         void setStokes (vector<StokesParameterMod::StokesParameter > stokes);
00384                 
00385         
00386         
00387         
00388 
00389 
00390         
00391         // ===> Attribute flux
00392         
00393         
00394         
00395 
00396         
00401         vector<vector<double > > getFlux() const;
00402         
00403  
00404         
00405         
00413         void setFlux (vector<vector<double > > flux);
00414                 
00415         
00416         
00417         
00418 
00419 
00420         
00421         // ===> Attribute fluxError
00422         
00423         
00424         
00425 
00426         
00431         vector<vector<double > > getFluxError() const;
00432         
00433  
00434         
00435         
00443         void setFluxError (vector<vector<double > > fluxError);
00444                 
00445         
00446         
00447         
00448 
00449 
00450         
00451         // ===> Attribute size, which is optional
00452         
00453         
00454         
00459         bool isSizeExists() const;
00460         
00461 
00462         
00468         vector<vector<vector<Angle > > > getSize() const throw(IllegalAccessException);
00469         
00470  
00471         
00472         
00479         void setSize (vector<vector<vector<Angle > > > size);
00480                 
00481         
00482         
00483         
00487         void clearSize ();
00488         
00489 
00490 
00491         
00492         // ===> Attribute sizeError, which is optional
00493         
00494         
00495         
00500         bool isSizeErrorExists() const;
00501         
00502 
00503         
00509         vector<vector<vector<Angle > > > getSizeError() const throw(IllegalAccessException);
00510         
00511  
00512         
00513         
00520         void setSizeError (vector<vector<vector<Angle > > > sizeError);
00521                 
00522         
00523         
00524         
00528         void clearSizeError ();
00529         
00530 
00531 
00532         
00533         // ===> Attribute PA, which is optional
00534         
00535         
00536         
00541         bool isPAExists() const;
00542         
00543 
00544         
00550         vector<vector<Angle > > getPA() const throw(IllegalAccessException);
00551         
00552  
00553         
00554         
00561         void setPA (vector<vector<Angle > > PA);
00562                 
00563         
00564         
00565         
00569         void clearPA ();
00570         
00571 
00572 
00573         
00574         // ===> Attribute PAError, which is optional
00575         
00576         
00577         
00582         bool isPAErrorExists() const;
00583         
00584 
00585         
00591         vector<vector<Angle > > getPAError() const throw(IllegalAccessException);
00592         
00593  
00594         
00595         
00602         void setPAError (vector<vector<Angle > > PAError);
00603                 
00604         
00605         
00606         
00610         void clearPAError ();
00611         
00612 
00613 
00614         
00615         // ===> Attribute fluxMethod
00616         
00617         
00618         
00619 
00620         
00625         FluxCalibrationMethodMod::FluxCalibrationMethod getFluxMethod() const;
00626         
00627  
00628         
00629         
00637         void setFluxMethod (FluxCalibrationMethodMod::FluxCalibrationMethod fluxMethod);
00638                 
00639         
00640         
00641         
00642 
00643 
00644         
00645         // ===> Attribute direction, which is optional
00646         
00647         
00648         
00653         bool isDirectionExists() const;
00654         
00655 
00656         
00662         vector<Angle > getDirection() const throw(IllegalAccessException);
00663         
00664  
00665         
00666         
00673         void setDirection (vector<Angle > direction);
00674                 
00675         
00676         
00677         
00681         void clearDirection ();
00682         
00683 
00684 
00685         
00686         // ===> Attribute sourceModel, which is optional
00687         
00688         
00689         
00694         bool isSourceModelExists() const;
00695         
00696 
00697         
00703         SourceModelMod::SourceModel getSourceModel() const throw(IllegalAccessException);
00704         
00705  
00706         
00707         
00714         void setSourceModel (SourceModelMod::SourceModel sourceModel);
00715                 
00716         
00717         
00718         
00722         void clearSourceModel ();
00723         
00724 
00725 
00726         
00727         // ===> Attribute frequencyRange
00728         
00729         
00730         
00731 
00732         
00737         vector<Frequency > getFrequencyRange() const;
00738         
00739  
00740         
00741         
00749         void setFrequencyRange (vector<Frequency > frequencyRange);
00750                 
00751         
00752         
00753         
00754 
00755 
00757         // Extrinsic Table Attributes //
00759         
00760         
00761         // ===> Attribute calDataId
00762         
00763         
00764         
00765 
00766         
00771         Tag getCalDataId() const;
00772         
00773  
00774         
00775         
00785         void setCalDataId (Tag calDataId);
00786                 
00787         
00788         
00789         
00790 
00791 
00792         
00793         // ===> Attribute calReductionId
00794         
00795         
00796         
00797 
00798         
00803         Tag getCalReductionId() const;
00804         
00805  
00806         
00807         
00817         void setCalReductionId (Tag calReductionId);
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, string sourceName, int numFrequency, int numStokes, ArrayTime startValidTime, ArrayTime endValidTime, vector<StokesParameterMod::StokesParameter > stokes, vector<vector<double > > flux, vector<vector<double > > fluxError, FluxCalibrationMethodMod::FluxCalibrationMethod fluxMethod, vector<Frequency > frequencyRange);
00866         
00867         
00868 
00869         
00870         bool compareRequiredValue(int numFrequency, int numStokes, ArrayTime startValidTime, ArrayTime endValidTime, vector<StokesParameterMod::StokesParameter > stokes, vector<vector<double > > flux, vector<vector<double > > fluxError, FluxCalibrationMethodMod::FluxCalibrationMethod fluxMethod, vector<Frequency > frequencyRange); 
00871                  
00872         
00881         bool equalByRequiredValue(CalFluxRow* x) ;
00882 
00883 private:
00887         CalFluxTable &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         CalFluxRow (CalFluxTable &table);
00906 
00924          CalFluxRow (CalFluxTable &table, CalFluxRow &row);
00925                 
00927         // Intrinsic Table Attributes //
00929         
00930         
00931         // ===> Attribute sourceName
00932         
00933         
00934 
00935         string sourceName;
00936 
00937         
00938         
00939         
00940 
00941         
00942         // ===> Attribute numFrequency
00943         
00944         
00945 
00946         int numFrequency;
00947 
00948         
00949         
00950         
00951 
00952         
00953         // ===> Attribute numStokes
00954         
00955         
00956 
00957         int numStokes;
00958 
00959         
00960         
00961         
00962 
00963         
00964         // ===> Attribute startValidTime
00965         
00966         
00967 
00968         ArrayTime startValidTime;
00969 
00970         
00971         
00972         
00973 
00974         
00975         // ===> Attribute endValidTime
00976         
00977         
00978 
00979         ArrayTime endValidTime;
00980 
00981         
00982         
00983         
00984 
00985         
00986         // ===> Attribute stokes
00987         
00988         
00989 
00990         vector<StokesParameterMod::StokesParameter > stokes;
00991 
00992         
00993         
00994         
00995 
00996         
00997         // ===> Attribute flux
00998         
00999         
01000 
01001         vector<vector<double > > flux;
01002 
01003         
01004         
01005         
01006 
01007         
01008         // ===> Attribute fluxError
01009         
01010         
01011 
01012         vector<vector<double > > fluxError;
01013 
01014         
01015         
01016         
01017 
01018         
01019         // ===> Attribute size, which is optional
01020         
01021         
01022         bool sizeExists;
01023         
01024 
01025         vector<vector<vector<Angle > > > size;
01026 
01027         
01028         
01029         
01030 
01031         
01032         // ===> Attribute sizeError, which is optional
01033         
01034         
01035         bool sizeErrorExists;
01036         
01037 
01038         vector<vector<vector<Angle > > > sizeError;
01039 
01040         
01041         
01042         
01043 
01044         
01045         // ===> Attribute PA, which is optional
01046         
01047         
01048         bool PAExists;
01049         
01050 
01051         vector<vector<Angle > > PA;
01052 
01053         
01054         
01055         
01056 
01057         
01058         // ===> Attribute PAError, which is optional
01059         
01060         
01061         bool PAErrorExists;
01062         
01063 
01064         vector<vector<Angle > > PAError;
01065 
01066         
01067         
01068         
01069 
01070         
01071         // ===> Attribute fluxMethod
01072         
01073         
01074 
01075         FluxCalibrationMethodMod::FluxCalibrationMethod fluxMethod;
01076 
01077         
01078         
01079         
01080 
01081         
01082         // ===> Attribute direction, which is optional
01083         
01084         
01085         bool directionExists;
01086         
01087 
01088         vector<Angle > direction;
01089 
01090         
01091         
01092         
01093 
01094         
01095         // ===> Attribute sourceModel, which is optional
01096         
01097         
01098         bool sourceModelExists;
01099         
01100 
01101         SourceModelMod::SourceModel sourceModel;
01102 
01103         
01104         
01105         
01106 
01107         
01108         // ===> Attribute frequencyRange
01109         
01110         
01111 
01112         vector<Frequency > frequencyRange;
01113 
01114         
01115         
01116         
01117 
01119         // Extrinsic Table Attributes //
01121         
01122         
01123         // ===> Attribute calDataId
01124         
01125         
01126 
01127         Tag calDataId;
01128 
01129         
01130         
01131         
01132 
01133         
01134         // ===> Attribute calReductionId
01135         
01136         
01137 
01138         Tag calReductionId;
01139 
01140         
01141         
01142         
01143 
01145         // Links //
01147         
01148         
01149                 
01150 
01151          
01152 
01153         
01154 
01155         
01156                 
01157 
01158          
01159 
01160         
01161 
01162 
01163 };
01164 
01165 } // End namespace asdm
01166 
01167 #endif /* CalFlux_CLASS */

Generated on Thu Aug 27 21:08:36 2009 for NRAOCASA by  doxygen 1.5.1