ExecBlockRow.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 ExecBlockRow.h
00032  */
00033  
00034 #ifndef ExecBlockRow_CLASS
00035 #define ExecBlockRow_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::ExecBlockRowIDL;
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 
00090         
00091 
00092         
00093 
00094         
00095 
00096         
00097 
00098         
00099 
00100         
00101 
00102         
00103 
00104         
00105 
00106         
00107 
00108         
00109 
00110         
00111 
00112         
00113 
00114         
00115 
00116         
00117 
00118         
00119 
00120         
00121 
00122 
00123 
00124 using asdm::Angle;
00125 using asdm::AngularRate;
00126 using asdm::ArrayTime;
00127 using asdm::Complex;
00128 using asdm::Entity;
00129 using asdm::EntityId;
00130 using asdm::EntityRef;
00131 using asdm::Flux;
00132 using asdm::Frequency;
00133 using asdm::Humidity;
00134 using asdm::Interval;
00135 using asdm::Length;
00136 using asdm::Pressure;
00137 using asdm::Speed;
00138 using asdm::Tag;
00139 using asdm::Temperature;
00140 using asdm::ConversionException;
00141 using asdm::NoSuchRow;
00142 using asdm::IllegalAccessException;
00143 
00144 /*\file ExecBlock.h
00145     \brief Generated from model's revision "1.41", branch "HEAD"
00146 */
00147 
00148 namespace asdm {
00149 
00150 //class asdm::ExecBlockTable;
00151 
00152 
00153 // class asdm::AntennaRow;
00154 class AntennaRow;
00155         
00156 
00163 class ExecBlockRow {
00164 friend class asdm::ExecBlockTable;
00165 
00166 public:
00167 
00168         virtual ~ExecBlockRow();
00169 
00173         ExecBlockTable &getTable() const;
00174         
00175 #ifndef WITHOUT_ACS
00176 
00180         ExecBlockRowIDL *toIDL() const;
00181 #endif
00182         
00183 #ifndef WITHOUT_ACS
00184 
00188         void setFromIDL (ExecBlockRowIDL 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 execBlockId
00210         
00211         
00212         
00213 
00214         
00219         Tag getExecBlockId() const;
00220         
00221  
00222         
00223         
00224         
00225         
00226 
00227 
00228         
00229         // ===> Attribute execBlockNum
00230         
00231         
00232         
00233 
00234         
00239         int getExecBlockNum() const;
00240         
00241  
00242         
00243         
00249         void setExecBlockNum (int execBlockNum);
00250                 
00251         
00252         
00253         
00254 
00255 
00256         
00257         // ===> Attribute telescopeName
00258         
00259         
00260         
00261 
00262         
00267         string getTelescopeName() const;
00268         
00269  
00270         
00271         
00277         void setTelescopeName (string telescopeName);
00278                 
00279         
00280         
00281         
00282 
00283 
00284         
00285         // ===> Attribute configName
00286         
00287         
00288         
00289 
00290         
00295         string getConfigName() const;
00296         
00297  
00298         
00299         
00305         void setConfigName (string configName);
00306                 
00307         
00308         
00309         
00310 
00311 
00312         
00313         // ===> Attribute numAntenna
00314         
00315         
00316         
00317 
00318         
00323         int getNumAntenna() const;
00324         
00325  
00326         
00327         
00333         void setNumAntenna (int numAntenna);
00334                 
00335         
00336         
00337         
00338 
00339 
00340         
00341         // ===> Attribute baseRangeMin
00342         
00343         
00344         
00345 
00346         
00351         Length getBaseRangeMin() const;
00352         
00353  
00354         
00355         
00361         void setBaseRangeMin (Length baseRangeMin);
00362                 
00363         
00364         
00365         
00366 
00367 
00368         
00369         // ===> Attribute baseRangeMax
00370         
00371         
00372         
00373 
00374         
00379         Length getBaseRangeMax() const;
00380         
00381  
00382         
00383         
00389         void setBaseRangeMax (Length baseRangeMax);
00390                 
00391         
00392         
00393         
00394 
00395 
00396         
00397         // ===> Attribute baseRmsMinor
00398         
00399         
00400         
00401 
00402         
00407         Length getBaseRmsMinor() const;
00408         
00409  
00410         
00411         
00417         void setBaseRmsMinor (Length baseRmsMinor);
00418                 
00419         
00420         
00421         
00422 
00423 
00424         
00425         // ===> Attribute baseRmsMajor
00426         
00427         
00428         
00429 
00430         
00435         Length getBaseRmsMajor() const;
00436         
00437  
00438         
00439         
00445         void setBaseRmsMajor (Length baseRmsMajor);
00446                 
00447         
00448         
00449         
00450 
00451 
00452         
00453         // ===> Attribute basePa
00454         
00455         
00456         
00457 
00458         
00463         Angle getBasePa() const;
00464         
00465  
00466         
00467         
00473         void setBasePa (Angle basePa);
00474                 
00475         
00476         
00477         
00478 
00479 
00480         
00481         // ===> Attribute timeInterval
00482         
00483         
00484         
00485 
00486         
00491         ArrayTimeInterval getTimeInterval() const;
00492         
00493  
00494         
00495         
00501         void setTimeInterval (ArrayTimeInterval timeInterval);
00502                 
00503         
00504         
00505         
00506 
00507 
00508         
00509         // ===> Attribute observerName
00510         
00511         
00512         
00513 
00514         
00519         string getObserverName() const;
00520         
00521  
00522         
00523         
00529         void setObserverName (string observerName);
00530                 
00531         
00532         
00533         
00534 
00535 
00536         
00537         // ===> Attribute observingLog
00538         
00539         
00540         
00541 
00542         
00547         vector<string > getObservingLog() const;
00548         
00549  
00550         
00551         
00557         void setObservingLog (vector<string > observingLog);
00558                 
00559         
00560         
00561         
00562 
00563 
00564         
00565         // ===> Attribute schedulerMode
00566         
00567         
00568         
00569 
00570         
00575         vector<string > getSchedulerMode() const;
00576         
00577  
00578         
00579         
00585         void setSchedulerMode (vector<string > schedulerMode);
00586                 
00587         
00588         
00589         
00590 
00591 
00592         
00593         // ===> Attribute projectId
00594         
00595         
00596         
00597 
00598         
00603         EntityRef getProjectId() const;
00604         
00605  
00606         
00607         
00613         void setProjectId (EntityRef projectId);
00614                 
00615         
00616         
00617         
00618 
00619 
00620         
00621         // ===> Attribute siteLongitude
00622         
00623         
00624         
00625 
00626         
00631         Angle getSiteLongitude() const;
00632         
00633  
00634         
00635         
00641         void setSiteLongitude (Angle siteLongitude);
00642                 
00643         
00644         
00645         
00646 
00647 
00648         
00649         // ===> Attribute siteLatitude
00650         
00651         
00652         
00653 
00654         
00659         Angle getSiteLatitude() const;
00660         
00661  
00662         
00663         
00669         void setSiteLatitude (Angle siteLatitude);
00670                 
00671         
00672         
00673         
00674 
00675 
00676         
00677         // ===> Attribute siteAltitude
00678         
00679         
00680         
00681 
00682         
00687         Length getSiteAltitude() const;
00688         
00689  
00690         
00691         
00697         void setSiteAltitude (Length siteAltitude);
00698                 
00699         
00700         
00701         
00702 
00703 
00704         
00705         // ===> Attribute releaseDate, which is optional
00706         
00707         
00708         
00713         bool isReleaseDateExists() const;
00714         
00715 
00716         
00722         ArrayTime getReleaseDate() const throw(IllegalAccessException);
00723         
00724  
00725         
00726         
00732         void setReleaseDate (ArrayTime releaseDate);
00733                 
00734         
00735         
00736         
00740         void clearReleaseDate ();
00741         
00742 
00743 
00744         
00745         // ===> Attribute flagRow
00746         
00747         
00748         
00749 
00750         
00755         bool getFlagRow() const;
00756         
00757  
00758         
00759         
00765         void setFlagRow (bool flagRow);
00766                 
00767         
00768         
00769         
00770 
00771 
00772         
00773         // ===> Attribute execBlockUID
00774         
00775         
00776         
00777 
00778         
00783         EntityRef getExecBlockUID() const;
00784         
00785  
00786         
00787         
00793         void setExecBlockUID (EntityRef execBlockUID);
00794                 
00795         
00796         
00797         
00798 
00799 
00800         
00801         // ===> Attribute aborted
00802         
00803         
00804         
00805 
00806         
00811         bool getAborted() const;
00812         
00813  
00814         
00815         
00821         void setAborted (bool aborted);
00822                 
00823         
00824         
00825         
00826 
00827 
00829         // Extrinsic Table Attributes //
00831         
00832         
00833         // ===> Attribute antennaId
00834         
00835         
00836         
00837 
00838         
00843         vector<Tag>  getAntennaId() const;
00844         
00845  
00846         
00847         
00853         void setAntennaId (vector<Tag>  antennaId);
00854                 
00855         
00856         
00857         
00858 
00859 
00861         // Links //
00863         
00864         
00865                 
00872         void setAntennaId (int i, Tag antennaId) throw(OutOfBoundsException) ;
00873                         
00874         
00875 
00876         
00877                  
00882  void addAntennaId(Tag id); 
00883 
00888  void addAntennaId(const vector<Tag> & id); 
00889  
00890 
00896  const Tag getAntennaId(int i);
00897  
00905  AntennaRow* getAntenna(int i); 
00906  
00911  vector<AntennaRow *> getAntennas(); 
00912   
00913 
00914         
00915 
00916         
00917         
00918         
00923         bool compareNoAutoInc(vector<Tag>  antennaId, int execBlockNum, string telescopeName, string configName, int numAntenna, Length baseRangeMin, Length baseRangeMax, Length baseRmsMinor, Length baseRmsMajor, Angle basePa, ArrayTimeInterval timeInterval, string observerName, vector<string > observingLog, vector<string > schedulerMode, EntityRef projectId, Angle siteLongitude, Angle siteLatitude, Length siteAltitude, bool flagRow, EntityRef execBlockUID, bool aborted);
00924         
00925         
00926 
00927         
00928         bool compareRequiredValue(vector<Tag>  antennaId, int execBlockNum, string telescopeName, string configName, int numAntenna, Length baseRangeMin, Length baseRangeMax, Length baseRmsMinor, Length baseRmsMajor, Angle basePa, ArrayTimeInterval timeInterval, string observerName, vector<string > observingLog, vector<string > schedulerMode, EntityRef projectId, Angle siteLongitude, Angle siteLatitude, Length siteAltitude, bool flagRow, EntityRef execBlockUID, bool aborted); 
00929                  
00930         
00939         bool equalByRequiredValue(ExecBlockRow* x) ;
00940 
00941 private:
00945         ExecBlockTable &table;
00949         bool hasBeenAdded;
00950 
00951         // This method is used by the Table class when this row is added to the table.
00952         void isAdded();
00953 
00954 
00963         ExecBlockRow (ExecBlockTable &table);
00964 
00982          ExecBlockRow (ExecBlockTable &table, ExecBlockRow &row);
00983                 
00985         // Intrinsic Table Attributes //
00987         
00988         
00989         // ===> Attribute execBlockId
00990         
00991         
00992 
00993         Tag execBlockId;
00994 
00995         
00996         
00997         
01004         void setExecBlockId (Tag execBlockId) throw(IllegalAccessException);
01005                 
01006         
01007 
01008         
01009         // ===> Attribute execBlockNum
01010         
01011         
01012 
01013         int execBlockNum;
01014 
01015         
01016         
01017         
01018 
01019         
01020         // ===> Attribute telescopeName
01021         
01022         
01023 
01024         string telescopeName;
01025 
01026         
01027         
01028         
01029 
01030         
01031         // ===> Attribute configName
01032         
01033         
01034 
01035         string configName;
01036 
01037         
01038         
01039         
01040 
01041         
01042         // ===> Attribute numAntenna
01043         
01044         
01045 
01046         int numAntenna;
01047 
01048         
01049         
01050         
01051 
01052         
01053         // ===> Attribute baseRangeMin
01054         
01055         
01056 
01057         Length baseRangeMin;
01058 
01059         
01060         
01061         
01062 
01063         
01064         // ===> Attribute baseRangeMax
01065         
01066         
01067 
01068         Length baseRangeMax;
01069 
01070         
01071         
01072         
01073 
01074         
01075         // ===> Attribute baseRmsMinor
01076         
01077         
01078 
01079         Length baseRmsMinor;
01080 
01081         
01082         
01083         
01084 
01085         
01086         // ===> Attribute baseRmsMajor
01087         
01088         
01089 
01090         Length baseRmsMajor;
01091 
01092         
01093         
01094         
01095 
01096         
01097         // ===> Attribute basePa
01098         
01099         
01100 
01101         Angle basePa;
01102 
01103         
01104         
01105         
01106 
01107         
01108         // ===> Attribute timeInterval
01109         
01110         
01111 
01112         ArrayTimeInterval timeInterval;
01113 
01114         
01115         
01116         
01117 
01118         
01119         // ===> Attribute observerName
01120         
01121         
01122 
01123         string observerName;
01124 
01125         
01126         
01127         
01128 
01129         
01130         // ===> Attribute observingLog
01131         
01132         
01133 
01134         vector<string > observingLog;
01135 
01136         
01137         
01138         
01139 
01140         
01141         // ===> Attribute schedulerMode
01142         
01143         
01144 
01145         vector<string > schedulerMode;
01146 
01147         
01148         
01149         
01150 
01151         
01152         // ===> Attribute projectId
01153         
01154         
01155 
01156         EntityRef projectId;
01157 
01158         
01159         
01160         
01161 
01162         
01163         // ===> Attribute siteLongitude
01164         
01165         
01166 
01167         Angle siteLongitude;
01168 
01169         
01170         
01171         
01172 
01173         
01174         // ===> Attribute siteLatitude
01175         
01176         
01177 
01178         Angle siteLatitude;
01179 
01180         
01181         
01182         
01183 
01184         
01185         // ===> Attribute siteAltitude
01186         
01187         
01188 
01189         Length siteAltitude;
01190 
01191         
01192         
01193         
01194 
01195         
01196         // ===> Attribute releaseDate, which is optional
01197         
01198         
01199         bool releaseDateExists;
01200         
01201 
01202         ArrayTime releaseDate;
01203 
01204         
01205         
01206         
01207 
01208         
01209         // ===> Attribute flagRow
01210         
01211         
01212 
01213         bool flagRow;
01214 
01215         
01216         
01217         
01218 
01219         
01220         // ===> Attribute execBlockUID
01221         
01222         
01223 
01224         EntityRef execBlockUID;
01225 
01226         
01227         
01228         
01229 
01230         
01231         // ===> Attribute aborted
01232         
01233         
01234 
01235         bool aborted;
01236 
01237         
01238         
01239         
01240 
01242         // Extrinsic Table Attributes //
01244         
01245         
01246         // ===> Attribute antennaId
01247         
01248         
01249 
01250         vector<Tag>  antennaId;
01251 
01252         
01253         
01254         
01255 
01257         // Links //
01259         
01260         
01261                 
01262 
01263 
01264         
01265 
01266 
01267 };
01268 
01269 } // End namespace asdm
01270 
01271 #endif /* ExecBlock_CLASS */

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