AntennaRow.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 AntennaRow.h
00032  */
00033  
00034 #ifndef AntennaRow_CLASS
00035 #define AntennaRow_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::AntennaRowIDL;
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 #include "CAntennaMake.h"
00084 using namespace AntennaMakeMod;
00085         
00086 
00087         
00088 #include "CAntennaType.h"
00089 using namespace AntennaTypeMod;
00090         
00091 
00092         
00093 
00094         
00095 
00096         
00097 
00098         
00099 
00100         
00101 
00102         
00103 
00104         
00105 
00106         
00107 
00108         
00109 
00110 
00111 
00112 using asdm::Angle;
00113 using asdm::AngularRate;
00114 using asdm::ArrayTime;
00115 using asdm::Complex;
00116 using asdm::Entity;
00117 using asdm::EntityId;
00118 using asdm::EntityRef;
00119 using asdm::Flux;
00120 using asdm::Frequency;
00121 using asdm::Humidity;
00122 using asdm::Interval;
00123 using asdm::Length;
00124 using asdm::Pressure;
00125 using asdm::Speed;
00126 using asdm::Tag;
00127 using asdm::Temperature;
00128 using asdm::ConversionException;
00129 using asdm::NoSuchRow;
00130 using asdm::IllegalAccessException;
00131 
00132 /*\file Antenna.h
00133     \brief Generated from model's revision "1.41", branch "HEAD"
00134 */
00135 
00136 namespace asdm {
00137 
00138 //class asdm::AntennaTable;
00139 
00140 
00141 // class asdm::AntennaRow;
00142 class AntennaRow;
00143 
00144 // class asdm::StationRow;
00145 class StationRow;
00146         
00147 
00154 class AntennaRow {
00155 friend class asdm::AntennaTable;
00156 
00157 public:
00158 
00159         virtual ~AntennaRow();
00160 
00164         AntennaTable &getTable() const;
00165         
00166 #ifndef WITHOUT_ACS
00167 
00171         AntennaRowIDL *toIDL() const;
00172 #endif
00173         
00174 #ifndef WITHOUT_ACS
00175 
00179         void setFromIDL (AntennaRowIDL x) throw(ConversionException);
00180 #endif
00181         
00186         string toXML() const;
00187 
00193         void setFromXML (string rowDoc) throw(ConversionException);
00194         
00196         // Intrinsic Table Attributes //
00198         
00199         
00200         // ===> Attribute antennaId
00201         
00202         
00203         
00204 
00205         
00210         Tag getAntennaId() const;
00211         
00212  
00213         
00214         
00215         
00216         
00217 
00218 
00219         
00220         // ===> Attribute name
00221         
00222         
00223         
00224 
00225         
00230         string getName() const;
00231         
00232  
00233         
00234         
00240         void setName (string name);
00241                 
00242         
00243         
00244         
00245 
00246 
00247         
00248         // ===> Attribute antennaMake
00249         
00250         
00251         
00252 
00253         
00258         AntennaMake getAntennaMake() const;
00259         
00260  
00261         
00262         
00268         void setAntennaMake (AntennaMake antennaMake);
00269                 
00270         
00271         
00272         
00273 
00274 
00275         
00276         // ===> Attribute antennaType
00277         
00278         
00279         
00280 
00281         
00286         AntennaType getAntennaType() const;
00287         
00288  
00289         
00290         
00296         void setAntennaType (AntennaType antennaType);
00297                 
00298         
00299         
00300         
00301 
00302 
00303         
00304         // ===> Attribute xPosition
00305         
00306         
00307         
00308 
00309         
00314         Length getXPosition() const;
00315         
00316  
00317         
00318         
00324         void setXPosition (Length xPosition);
00325                 
00326         
00327         
00328         
00329 
00330 
00331         
00332         // ===> Attribute yPosition
00333         
00334         
00335         
00336 
00337         
00342         Length getYPosition() const;
00343         
00344  
00345         
00346         
00352         void setYPosition (Length yPosition);
00353                 
00354         
00355         
00356         
00357 
00358 
00359         
00360         // ===> Attribute zPosition
00361         
00362         
00363         
00364 
00365         
00370         Length getZPosition() const;
00371         
00372  
00373         
00374         
00380         void setZPosition (Length zPosition);
00381                 
00382         
00383         
00384         
00385 
00386 
00387         
00388         // ===> Attribute time
00389         
00390         
00391         
00392 
00393         
00398         ArrayTime getTime() const;
00399         
00400  
00401         
00402         
00408         void setTime (ArrayTime time);
00409                 
00410         
00411         
00412         
00413 
00414 
00415         
00416         // ===> Attribute xOffset
00417         
00418         
00419         
00420 
00421         
00426         Length getXOffset() const;
00427         
00428  
00429         
00430         
00436         void setXOffset (Length xOffset);
00437                 
00438         
00439         
00440         
00441 
00442 
00443         
00444         // ===> Attribute yOffset
00445         
00446         
00447         
00448 
00449         
00454         Length getYOffset() const;
00455         
00456  
00457         
00458         
00464         void setYOffset (Length yOffset);
00465                 
00466         
00467         
00468         
00469 
00470 
00471         
00472         // ===> Attribute zOffset
00473         
00474         
00475         
00476 
00477         
00482         Length getZOffset() const;
00483         
00484  
00485         
00486         
00492         void setZOffset (Length zOffset);
00493                 
00494         
00495         
00496         
00497 
00498 
00499         
00500         // ===> Attribute dishDiameter
00501         
00502         
00503         
00504 
00505         
00510         Length getDishDiameter() const;
00511         
00512  
00513         
00514         
00520         void setDishDiameter (Length dishDiameter);
00521                 
00522         
00523         
00524         
00525 
00526 
00527         
00528         // ===> Attribute flagRow
00529         
00530         
00531         
00532 
00533         
00538         bool getFlagRow() const;
00539         
00540  
00541         
00542         
00548         void setFlagRow (bool flagRow);
00549                 
00550         
00551         
00552         
00553 
00554 
00556         // Extrinsic Table Attributes //
00558         
00559         
00560         // ===> Attribute assocAntennaId, which is optional
00561         
00562         
00563         
00568         bool isAssocAntennaIdExists() const;
00569         
00570 
00571         
00577         Tag getAssocAntennaId() const throw(IllegalAccessException);
00578         
00579  
00580         
00581         
00587         void setAssocAntennaId (Tag assocAntennaId);
00588                 
00589         
00590         
00591         
00595         void clearAssocAntennaId ();
00596         
00597 
00598 
00599         
00600         // ===> Attribute stationId
00601         
00602         
00603         
00604 
00605         
00610         Tag getStationId() const;
00611         
00612  
00613         
00614         
00620         void setStationId (Tag stationId);
00621                 
00622         
00623         
00624         
00625 
00626 
00628         // Links //
00630         
00631         
00632 
00633         
00634                 
00635                 
00636                         
00637         // ===> Optional link from a row of Antenna table to a row of Antenna table.
00638 
00643         bool isAssociatedAntennaExists() const;
00644 
00650         AntennaRow *getAssociatedAntenna() const throw(NoSuchRow);
00651         
00655         void setAssociatedAntennaLink(Tag assocAntennaId);
00656 
00657 
00658                 
00659                 
00660         
00661 
00662         
00663 
00664         
00665                 
00672          StationRow* getStationUsingStationId();
00673          
00674 
00675         
00676 
00677         
00678         
00679         
00684         bool compareNoAutoInc(Tag stationId, string name, AntennaMake antennaMake, AntennaType antennaType, Length xPosition, Length yPosition, Length zPosition, ArrayTime time, Length xOffset, Length yOffset, Length zOffset, Length dishDiameter, bool flagRow);
00685         
00686         
00687 
00688         
00689         bool compareRequiredValue(Tag stationId, string name, AntennaMake antennaMake, AntennaType antennaType, Length xPosition, Length yPosition, Length zPosition, ArrayTime time, Length xOffset, Length yOffset, Length zOffset, Length dishDiameter, bool flagRow); 
00690                  
00691         
00700         bool equalByRequiredValue(AntennaRow* x) ;
00701 
00702 private:
00706         AntennaTable &table;
00710         bool hasBeenAdded;
00711 
00712         // This method is used by the Table class when this row is added to the table.
00713         void isAdded();
00714 
00715 
00724         AntennaRow (AntennaTable &table);
00725 
00743          AntennaRow (AntennaTable &table, AntennaRow &row);
00744                 
00746         // Intrinsic Table Attributes //
00748         
00749         
00750         // ===> Attribute antennaId
00751         
00752         
00753 
00754         Tag antennaId;
00755 
00756         
00757         
00758         
00765         void setAntennaId (Tag antennaId) throw(IllegalAccessException);
00766                 
00767         
00768 
00769         
00770         // ===> Attribute name
00771         
00772         
00773 
00774         string name;
00775 
00776         
00777         
00778         
00779 
00780         
00781         // ===> Attribute antennaMake
00782         
00783         
00784 
00785         AntennaMake antennaMake;
00786 
00787         
00788         
00789         
00790 
00791         
00792         // ===> Attribute antennaType
00793         
00794         
00795 
00796         AntennaType antennaType;
00797 
00798         
00799         
00800         
00801 
00802         
00803         // ===> Attribute xPosition
00804         
00805         
00806 
00807         Length xPosition;
00808 
00809         
00810         
00811         
00812 
00813         
00814         // ===> Attribute yPosition
00815         
00816         
00817 
00818         Length yPosition;
00819 
00820         
00821         
00822         
00823 
00824         
00825         // ===> Attribute zPosition
00826         
00827         
00828 
00829         Length zPosition;
00830 
00831         
00832         
00833         
00834 
00835         
00836         // ===> Attribute time
00837         
00838         
00839 
00840         ArrayTime time;
00841 
00842         
00843         
00844         
00845 
00846         
00847         // ===> Attribute xOffset
00848         
00849         
00850 
00851         Length xOffset;
00852 
00853         
00854         
00855         
00856 
00857         
00858         // ===> Attribute yOffset
00859         
00860         
00861 
00862         Length yOffset;
00863 
00864         
00865         
00866         
00867 
00868         
00869         // ===> Attribute zOffset
00870         
00871         
00872 
00873         Length zOffset;
00874 
00875         
00876         
00877         
00878 
00879         
00880         // ===> Attribute dishDiameter
00881         
00882         
00883 
00884         Length dishDiameter;
00885 
00886         
00887         
00888         
00889 
00890         
00891         // ===> Attribute flagRow
00892         
00893         
00894 
00895         bool flagRow;
00896 
00897         
00898         
00899         
00900 
00902         // Extrinsic Table Attributes //
00904         
00905         
00906         // ===> Attribute assocAntennaId, which is optional
00907         
00908         
00909         bool assocAntennaIdExists;
00910         
00911 
00912         Tag assocAntennaId;
00913 
00914         
00915         
00916         
00917 
00918         
00919         // ===> Attribute stationId
00920         
00921         
00922 
00923         Tag stationId;
00924 
00925         
00926         
00927         
00928 
00930         // Links //
00932         
00933                 
00934                 
00935         
00936 
00937         
00938                 
00939 
00940          
00941 
00942         
00943 
00944 
00945 };
00946 
00947 } // End namespace asdm
00948 
00949 #endif /* Antenna_CLASS */

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