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.46", 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 00242 void setName (string name); 00243 00244 00245 00246 00247 00248 00249 00250 // ===> Attribute antennaMake 00251 00252 00253 00254 00255 00260 AntennaMakeMod::AntennaMake getAntennaMake() const; 00261 00262 00263 00264 00272 void setAntennaMake (AntennaMakeMod::AntennaMake antennaMake); 00273 00274 00275 00276 00277 00278 00279 00280 // ===> Attribute antennaType 00281 00282 00283 00284 00285 00290 AntennaTypeMod::AntennaType getAntennaType() const; 00291 00292 00293 00294 00302 void setAntennaType (AntennaTypeMod::AntennaType antennaType); 00303 00304 00305 00306 00307 00308 00309 00310 // ===> Attribute xPosition 00311 00312 00313 00314 00315 00320 Length getXPosition() const; 00321 00322 00323 00324 00332 void setXPosition (Length xPosition); 00333 00334 00335 00336 00337 00338 00339 00340 // ===> Attribute yPosition 00341 00342 00343 00344 00345 00350 Length getYPosition() const; 00351 00352 00353 00354 00362 void setYPosition (Length yPosition); 00363 00364 00365 00366 00367 00368 00369 00370 // ===> Attribute zPosition 00371 00372 00373 00374 00375 00380 Length getZPosition() const; 00381 00382 00383 00384 00392 void setZPosition (Length zPosition); 00393 00394 00395 00396 00397 00398 00399 00400 // ===> Attribute time 00401 00402 00403 00404 00405 00410 ArrayTime getTime() const; 00411 00412 00413 00414 00422 void setTime (ArrayTime time); 00423 00424 00425 00426 00427 00428 00429 00430 // ===> Attribute xOffset 00431 00432 00433 00434 00435 00440 Length getXOffset() const; 00441 00442 00443 00444 00452 void setXOffset (Length xOffset); 00453 00454 00455 00456 00457 00458 00459 00460 // ===> Attribute yOffset 00461 00462 00463 00464 00465 00470 Length getYOffset() const; 00471 00472 00473 00474 00482 void setYOffset (Length yOffset); 00483 00484 00485 00486 00487 00488 00489 00490 // ===> Attribute zOffset 00491 00492 00493 00494 00495 00500 Length getZOffset() const; 00501 00502 00503 00504 00512 void setZOffset (Length zOffset); 00513 00514 00515 00516 00517 00518 00519 00520 // ===> Attribute dishDiameter 00521 00522 00523 00524 00525 00530 Length getDishDiameter() const; 00531 00532 00533 00534 00542 void setDishDiameter (Length dishDiameter); 00543 00544 00545 00546 00547 00548 00549 00550 // ===> Attribute flagRow 00551 00552 00553 00554 00555 00560 bool getFlagRow() const; 00561 00562 00563 00564 00572 void setFlagRow (bool flagRow); 00573 00574 00575 00576 00577 00578 00580 // Extrinsic Table Attributes // 00582 00583 00584 // ===> Attribute assocAntennaId, which is optional 00585 00586 00587 00592 bool isAssocAntennaIdExists() const; 00593 00594 00595 00601 Tag getAssocAntennaId() const throw(IllegalAccessException); 00602 00603 00604 00605 00612 void setAssocAntennaId (Tag assocAntennaId); 00613 00614 00615 00616 00620 void clearAssocAntennaId (); 00621 00622 00623 00624 00625 // ===> Attribute stationId 00626 00627 00628 00629 00630 00635 Tag getStationId() const; 00636 00637 00638 00639 00647 void setStationId (Tag stationId); 00648 00649 00650 00651 00652 00653 00655 // Links // 00657 00658 00659 00660 00661 00662 00663 00664 // ===> Optional link from a row of Antenna table to a row of Antenna table. 00665 00670 bool isAssociatedAntennaExists() const; 00671 00677 AntennaRow *getAssociatedAntenna() const throw(NoSuchRow); 00678 00682 void setAssociatedAntennaLink(Tag assocAntennaId); 00683 00684 00685 00686 00687 00688 00689 00690 00691 00692 00699 StationRow* getStationUsingStationId(); 00700 00701 00702 00703 00704 00705 00706 00711 bool compareNoAutoInc(Tag stationId, string name, AntennaMakeMod::AntennaMake antennaMake, AntennaTypeMod::AntennaType antennaType, Length xPosition, Length yPosition, Length zPosition, ArrayTime time, Length xOffset, Length yOffset, Length zOffset, Length dishDiameter, bool flagRow); 00712 00713 00714 00715 00716 bool compareRequiredValue(Tag stationId, string name, AntennaMakeMod::AntennaMake antennaMake, AntennaTypeMod::AntennaType antennaType, Length xPosition, Length yPosition, Length zPosition, ArrayTime time, Length xOffset, Length yOffset, Length zOffset, Length dishDiameter, bool flagRow); 00717 00718 00727 bool equalByRequiredValue(AntennaRow* x) ; 00728 00729 private: 00733 AntennaTable &table; 00737 bool hasBeenAdded; 00738 00739 // This method is used by the Table class when this row is added to the table. 00740 void isAdded(); 00741 00742 00751 AntennaRow (AntennaTable &table); 00752 00770 AntennaRow (AntennaTable &table, AntennaRow &row); 00771 00773 // Intrinsic Table Attributes // 00775 00776 00777 // ===> Attribute antennaId 00778 00779 00780 00781 Tag antennaId; 00782 00783 00784 00785 00795 void setAntennaId (Tag antennaId); 00796 00797 00798 00799 00800 // ===> Attribute name 00801 00802 00803 00804 string name; 00805 00806 00807 00808 00809 00810 00811 // ===> Attribute antennaMake 00812 00813 00814 00815 AntennaMakeMod::AntennaMake antennaMake; 00816 00817 00818 00819 00820 00821 00822 // ===> Attribute antennaType 00823 00824 00825 00826 AntennaTypeMod::AntennaType antennaType; 00827 00828 00829 00830 00831 00832 00833 // ===> Attribute xPosition 00834 00835 00836 00837 Length xPosition; 00838 00839 00840 00841 00842 00843 00844 // ===> Attribute yPosition 00845 00846 00847 00848 Length yPosition; 00849 00850 00851 00852 00853 00854 00855 // ===> Attribute zPosition 00856 00857 00858 00859 Length zPosition; 00860 00861 00862 00863 00864 00865 00866 // ===> Attribute time 00867 00868 00869 00870 ArrayTime time; 00871 00872 00873 00874 00875 00876 00877 // ===> Attribute xOffset 00878 00879 00880 00881 Length xOffset; 00882 00883 00884 00885 00886 00887 00888 // ===> Attribute yOffset 00889 00890 00891 00892 Length yOffset; 00893 00894 00895 00896 00897 00898 00899 // ===> Attribute zOffset 00900 00901 00902 00903 Length zOffset; 00904 00905 00906 00907 00908 00909 00910 // ===> Attribute dishDiameter 00911 00912 00913 00914 Length dishDiameter; 00915 00916 00917 00918 00919 00920 00921 // ===> Attribute flagRow 00922 00923 00924 00925 bool flagRow; 00926 00927 00928 00929 00930 00932 // Extrinsic Table Attributes // 00934 00935 00936 // ===> Attribute assocAntennaId, which is optional 00937 00938 00939 bool assocAntennaIdExists; 00940 00941 00942 Tag assocAntennaId; 00943 00944 00945 00946 00947 00948 00949 // ===> Attribute stationId 00950 00951 00952 00953 Tag stationId; 00954 00955 00956 00957 00958 00960 // Links // 00962 00963 00964 00965 00966 00967 00968 00969 00970 00971 00972 00973 00974 00975 }; 00976 00977 } // End namespace asdm 00978 00979 #endif /* Antenna_CLASS */

Generated on Tue Nov 18 17:43:40 2008 for ASDM C++ Implementation by doxygen 1.3.8