ExecBlockRow.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 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 
00050 
00051 
00052 
00053 
00054 #include <ArrayTime.h>
00055 using  asdm::ArrayTime;
00056 
00057 #include <Angle.h>
00058 using  asdm::Angle;
00059 
00060 #include <Tag.h>
00061 using  asdm::Tag;
00062 
00063 #include <Length.h>
00064 using  asdm::Length;
00065 
00066 #include <EntityRef.h>
00067 using  asdm::EntityRef;
00068 
00069 
00070 
00071 
00072         
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 #include <ConversionException.h>
00125 #include <NoSuchRow.h>
00126 #include <IllegalAccessException.h>
00127 
00128 
00129 /*\file ExecBlock.h
00130     \brief Generated from model's revision "1.55", branch "HEAD"
00131 */
00132 
00133 namespace asdm {
00134 
00135 //class asdm::ExecBlockTable;
00136 
00137 
00138 // class asdm::AntennaRow;
00139 class AntennaRow;
00140 
00141 // class asdm::SBSummaryRow;
00142 class SBSummaryRow;
00143         
00144 
00145 class ExecBlockRow;
00146 typedef void (ExecBlockRow::*ExecBlockAttributeFromBin) (EndianISStream& eiss);
00147 
00154 class ExecBlockRow {
00155 friend class asdm::ExecBlockTable;
00156 
00157 public:
00158 
00159         virtual ~ExecBlockRow();
00160 
00164         ExecBlockTable &getTable() const;
00165         
00170         bool isAdded() const;
00171                 
00173         // Intrinsic Table Attributes //
00175         
00176         
00177         // ===> Attribute execBlockId
00178         
00179         
00180         
00181 
00182         
00187         Tag getExecBlockId() const;
00188         
00189  
00190         
00191         
00192         
00193         
00194 
00195 
00196         
00197         // ===> Attribute startTime
00198         
00199         
00200         
00201 
00202         
00207         ArrayTime getStartTime() const;
00208         
00209  
00210         
00211         
00219         void setStartTime (ArrayTime startTime);
00220                 
00221         
00222         
00223         
00224 
00225 
00226         
00227         // ===> Attribute endTime
00228         
00229         
00230         
00231 
00232         
00237         ArrayTime getEndTime() const;
00238         
00239  
00240         
00241         
00249         void setEndTime (ArrayTime endTime);
00250                 
00251         
00252         
00253         
00254 
00255 
00256         
00257         // ===> Attribute execBlockNum
00258         
00259         
00260         
00261 
00262         
00267         int getExecBlockNum() const;
00268         
00269  
00270         
00271         
00279         void setExecBlockNum (int execBlockNum);
00280                 
00281         
00282         
00283         
00284 
00285 
00286         
00287         // ===> Attribute execBlockUID
00288         
00289         
00290         
00291 
00292         
00297         EntityRef getExecBlockUID() const;
00298         
00299  
00300         
00301         
00309         void setExecBlockUID (EntityRef execBlockUID);
00310                 
00311         
00312         
00313         
00314 
00315 
00316         
00317         // ===> Attribute projectId
00318         
00319         
00320         
00321 
00322         
00327         EntityRef getProjectId() const;
00328         
00329  
00330         
00331         
00339         void setProjectId (EntityRef projectId);
00340                 
00341         
00342         
00343         
00344 
00345 
00346         
00347         // ===> Attribute configName
00348         
00349         
00350         
00351 
00352         
00357         string getConfigName() const;
00358         
00359  
00360         
00361         
00369         void setConfigName (string configName);
00370                 
00371         
00372         
00373         
00374 
00375 
00376         
00377         // ===> Attribute telescopeName
00378         
00379         
00380         
00381 
00382         
00387         string getTelescopeName() const;
00388         
00389  
00390         
00391         
00399         void setTelescopeName (string telescopeName);
00400                 
00401         
00402         
00403         
00404 
00405 
00406         
00407         // ===> Attribute observerName
00408         
00409         
00410         
00411 
00412         
00417         string getObserverName() const;
00418         
00419  
00420         
00421         
00429         void setObserverName (string observerName);
00430                 
00431         
00432         
00433         
00434 
00435 
00436         
00437         // ===> Attribute observingLog
00438         
00439         
00440         
00441 
00442         
00447         string getObservingLog() const;
00448         
00449  
00450         
00451         
00459         void setObservingLog (string observingLog);
00460                 
00461         
00462         
00463         
00464 
00465 
00466         
00467         // ===> Attribute sessionReference
00468         
00469         
00470         
00471 
00472         
00477         string getSessionReference() const;
00478         
00479  
00480         
00481         
00489         void setSessionReference (string sessionReference);
00490                 
00491         
00492         
00493         
00494 
00495 
00496         
00497         // ===> Attribute sbSummary
00498         
00499         
00500         
00501 
00502         
00507         EntityRef getSbSummary() const;
00508         
00509  
00510         
00511         
00519         void setSbSummary (EntityRef sbSummary);
00520                 
00521         
00522         
00523         
00524 
00525 
00526         
00527         // ===> Attribute schedulerMode
00528         
00529         
00530         
00531 
00532         
00537         string getSchedulerMode() const;
00538         
00539  
00540         
00541         
00549         void setSchedulerMode (string schedulerMode);
00550                 
00551         
00552         
00553         
00554 
00555 
00556         
00557         // ===> Attribute baseRangeMin
00558         
00559         
00560         
00561 
00562         
00567         Length getBaseRangeMin() const;
00568         
00569  
00570         
00571         
00579         void setBaseRangeMin (Length baseRangeMin);
00580                 
00581         
00582         
00583         
00584 
00585 
00586         
00587         // ===> Attribute baseRangeMax
00588         
00589         
00590         
00591 
00592         
00597         Length getBaseRangeMax() const;
00598         
00599  
00600         
00601         
00609         void setBaseRangeMax (Length baseRangeMax);
00610                 
00611         
00612         
00613         
00614 
00615 
00616         
00617         // ===> Attribute baseRmsMinor
00618         
00619         
00620         
00621 
00622         
00627         Length getBaseRmsMinor() const;
00628         
00629  
00630         
00631         
00639         void setBaseRmsMinor (Length baseRmsMinor);
00640                 
00641         
00642         
00643         
00644 
00645 
00646         
00647         // ===> Attribute baseRmsMajor
00648         
00649         
00650         
00651 
00652         
00657         Length getBaseRmsMajor() const;
00658         
00659  
00660         
00661         
00669         void setBaseRmsMajor (Length baseRmsMajor);
00670                 
00671         
00672         
00673         
00674 
00675 
00676         
00677         // ===> Attribute basePa
00678         
00679         
00680         
00681 
00682         
00687         Angle getBasePa() const;
00688         
00689  
00690         
00691         
00699         void setBasePa (Angle basePa);
00700                 
00701         
00702         
00703         
00704 
00705 
00706         
00707         // ===> Attribute siteAltitude
00708         
00709         
00710         
00711 
00712         
00717         Length getSiteAltitude() const;
00718         
00719  
00720         
00721         
00729         void setSiteAltitude (Length siteAltitude);
00730                 
00731         
00732         
00733         
00734 
00735 
00736         
00737         // ===> Attribute siteLongitude
00738         
00739         
00740         
00741 
00742         
00747         Angle getSiteLongitude() const;
00748         
00749  
00750         
00751         
00759         void setSiteLongitude (Angle siteLongitude);
00760                 
00761         
00762         
00763         
00764 
00765 
00766         
00767         // ===> Attribute siteLatitude
00768         
00769         
00770         
00771 
00772         
00777         Angle getSiteLatitude() const;
00778         
00779  
00780         
00781         
00789         void setSiteLatitude (Angle siteLatitude);
00790                 
00791         
00792         
00793         
00794 
00795 
00796         
00797         // ===> Attribute aborted
00798         
00799         
00800         
00801 
00802         
00807         bool getAborted() const;
00808         
00809  
00810         
00811         
00819         void setAborted (bool aborted);
00820                 
00821         
00822         
00823         
00824 
00825 
00826         
00827         // ===> Attribute numAntenna
00828         
00829         
00830         
00831 
00832         
00837         int getNumAntenna() const;
00838         
00839  
00840         
00841         
00849         void setNumAntenna (int numAntenna);
00850                 
00851         
00852         
00853         
00854 
00855 
00856         
00857         // ===> Attribute releaseDate, which is optional
00858         
00859         
00860         
00865         bool isReleaseDateExists() const;
00866         
00867 
00868         
00874         ArrayTime getReleaseDate() const;
00875         
00876  
00877         
00878         
00885         void setReleaseDate (ArrayTime releaseDate);
00886                 
00887         
00888         
00889         
00893         void clearReleaseDate ();
00894         
00895 
00896 
00897         
00898         // ===> Attribute flagRow, which is optional
00899         
00900         
00901         
00906         bool isFlagRowExists() const;
00907         
00908 
00909         
00915         bool getFlagRow() const;
00916         
00917  
00918         
00919         
00926         void setFlagRow (bool flagRow);
00927                 
00928         
00929         
00930         
00934         void clearFlagRow ();
00935         
00936 
00937 
00939         // Extrinsic Table Attributes //
00941         
00942         
00943         // ===> Attribute antennaId
00944         
00945         
00946         
00947 
00948         
00953         vector<Tag>  getAntennaId() const;
00954         
00955  
00956         
00957         
00965         void setAntennaId (vector<Tag>  antennaId);
00966                 
00967         
00968         
00969         
00970 
00971 
00972         
00973         // ===> Attribute sBSummaryId
00974         
00975         
00976         
00977 
00978         
00983         Tag getSBSummaryId() const;
00984         
00985  
00986         
00987         
00995         void setSBSummaryId (Tag sBSummaryId);
00996                 
00997         
00998         
00999         
01000 
01001 
01003         // Links //
01005         
01006         
01007                 
01015         void setAntennaId (int i, Tag antennaId); 
01016                         
01017         
01018 
01019         
01020                  
01025  void addAntennaId(Tag id); 
01026 
01031  void addAntennaId(const vector<Tag> & id); 
01032  
01033 
01039  const Tag getAntennaId(int i);
01040  
01048  AntennaRow* getAntennaUsingAntennaId(int i); 
01049  
01054  vector<AntennaRow *> getAntennasUsingAntennaId(); 
01055   
01056 
01057         
01058 
01059         
01060 
01061         
01062                 
01069          SBSummaryRow* getSBSummaryUsingSBSummaryId();
01070          
01071 
01072         
01073 
01074         
01075         
01076         
01130         bool compareNoAutoInc(ArrayTime startTime, ArrayTime endTime, int execBlockNum, EntityRef execBlockUID, EntityRef projectId, string configName, string telescopeName, string observerName, string observingLog, string sessionReference, EntityRef sbSummary, string schedulerMode, Length baseRangeMin, Length baseRangeMax, Length baseRmsMinor, Length baseRmsMajor, Angle basePa, Length siteAltitude, Angle siteLongitude, Angle siteLatitude, bool aborted, int numAntenna, vector<Tag>  antennaId, Tag sBSummaryId);
01131         
01132         
01133 
01134         
01188         bool compareRequiredValue(ArrayTime startTime, ArrayTime endTime, int execBlockNum, EntityRef execBlockUID, EntityRef projectId, string configName, string telescopeName, string observerName, string observingLog, string sessionReference, EntityRef sbSummary, string schedulerMode, Length baseRangeMin, Length baseRangeMax, Length baseRmsMinor, Length baseRmsMajor, Angle basePa, Length siteAltitude, Angle siteLongitude, Angle siteLatitude, bool aborted, int numAntenna, vector<Tag>  antennaId, Tag sBSummaryId); 
01189                  
01190         
01199         bool equalByRequiredValue(ExecBlockRow* x) ;
01200         
01201 #ifndef WITHOUT_ACS
01202 
01206         ExecBlockRowIDL *toIDL() const;
01207 #endif
01208         
01209 #ifndef WITHOUT_ACS
01210 
01215         void setFromIDL (ExecBlockRowIDL x) ;
01216 #endif
01217         
01222         string toXML() const;
01223 
01230         void setFromXML (string rowDoc) ;       
01231 
01232 private:
01236         ExecBlockTable &table;
01240         bool hasBeenAdded;
01241 
01242         // This method is used by the Table class when this row is added to the table.
01243         void isAdded(bool added);
01244 
01245 
01254         ExecBlockRow (ExecBlockTable &table);
01255 
01273          ExecBlockRow (ExecBlockTable &table, ExecBlockRow &row);
01274                 
01276         // Intrinsic Table Attributes //
01278         
01279         
01280         // ===> Attribute execBlockId
01281         
01282         
01283 
01284         Tag execBlockId;
01285 
01286         
01287         
01288         
01298         void setExecBlockId (Tag execBlockId);
01299                 
01300         
01301 
01302         
01303         // ===> Attribute startTime
01304         
01305         
01306 
01307         ArrayTime startTime;
01308 
01309         
01310         
01311         
01312 
01313         
01314         // ===> Attribute endTime
01315         
01316         
01317 
01318         ArrayTime endTime;
01319 
01320         
01321         
01322         
01323 
01324         
01325         // ===> Attribute execBlockNum
01326         
01327         
01328 
01329         int execBlockNum;
01330 
01331         
01332         
01333         
01334 
01335         
01336         // ===> Attribute execBlockUID
01337         
01338         
01339 
01340         EntityRef execBlockUID;
01341 
01342         
01343         
01344         
01345 
01346         
01347         // ===> Attribute projectId
01348         
01349         
01350 
01351         EntityRef projectId;
01352 
01353         
01354         
01355         
01356 
01357         
01358         // ===> Attribute configName
01359         
01360         
01361 
01362         string configName;
01363 
01364         
01365         
01366         
01367 
01368         
01369         // ===> Attribute telescopeName
01370         
01371         
01372 
01373         string telescopeName;
01374 
01375         
01376         
01377         
01378 
01379         
01380         // ===> Attribute observerName
01381         
01382         
01383 
01384         string observerName;
01385 
01386         
01387         
01388         
01389 
01390         
01391         // ===> Attribute observingLog
01392         
01393         
01394 
01395         string observingLog;
01396 
01397         
01398         
01399         
01400 
01401         
01402         // ===> Attribute sessionReference
01403         
01404         
01405 
01406         string sessionReference;
01407 
01408         
01409         
01410         
01411 
01412         
01413         // ===> Attribute sbSummary
01414         
01415         
01416 
01417         EntityRef sbSummary;
01418 
01419         
01420         
01421         
01422 
01423         
01424         // ===> Attribute schedulerMode
01425         
01426         
01427 
01428         string schedulerMode;
01429 
01430         
01431         
01432         
01433 
01434         
01435         // ===> Attribute baseRangeMin
01436         
01437         
01438 
01439         Length baseRangeMin;
01440 
01441         
01442         
01443         
01444 
01445         
01446         // ===> Attribute baseRangeMax
01447         
01448         
01449 
01450         Length baseRangeMax;
01451 
01452         
01453         
01454         
01455 
01456         
01457         // ===> Attribute baseRmsMinor
01458         
01459         
01460 
01461         Length baseRmsMinor;
01462 
01463         
01464         
01465         
01466 
01467         
01468         // ===> Attribute baseRmsMajor
01469         
01470         
01471 
01472         Length baseRmsMajor;
01473 
01474         
01475         
01476         
01477 
01478         
01479         // ===> Attribute basePa
01480         
01481         
01482 
01483         Angle basePa;
01484 
01485         
01486         
01487         
01488 
01489         
01490         // ===> Attribute siteAltitude
01491         
01492         
01493 
01494         Length siteAltitude;
01495 
01496         
01497         
01498         
01499 
01500         
01501         // ===> Attribute siteLongitude
01502         
01503         
01504 
01505         Angle siteLongitude;
01506 
01507         
01508         
01509         
01510 
01511         
01512         // ===> Attribute siteLatitude
01513         
01514         
01515 
01516         Angle siteLatitude;
01517 
01518         
01519         
01520         
01521 
01522         
01523         // ===> Attribute aborted
01524         
01525         
01526 
01527         bool aborted;
01528 
01529         
01530         
01531         
01532 
01533         
01534         // ===> Attribute numAntenna
01535         
01536         
01537 
01538         int numAntenna;
01539 
01540         
01541         
01542         
01543 
01544         
01545         // ===> Attribute releaseDate, which is optional
01546         
01547         
01548         bool releaseDateExists;
01549         
01550 
01551         ArrayTime releaseDate;
01552 
01553         
01554         
01555         
01556 
01557         
01558         // ===> Attribute flagRow, which is optional
01559         
01560         
01561         bool flagRowExists;
01562         
01563 
01564         bool flagRow;
01565 
01566         
01567         
01568         
01569 
01571         // Extrinsic Table Attributes //
01573         
01574         
01575         // ===> Attribute antennaId
01576         
01577         
01578 
01579         vector<Tag>  antennaId;
01580 
01581         
01582         
01583         
01584 
01585         
01586         // ===> Attribute sBSummaryId
01587         
01588         
01589 
01590         Tag sBSummaryId;
01591 
01592         
01593         
01594         
01595 
01597         // Links //
01599         
01600         
01601                 
01602 
01603 
01604         
01605 
01606         
01607                 
01608 
01609          
01610 
01611         
01612 
01613         
01615         // binary-deserialization material//
01617         map<string, ExecBlockAttributeFromBin> fromBinMethods;
01618 void execBlockIdFromBin( EndianISStream& eiss);
01619 void startTimeFromBin( EndianISStream& eiss);
01620 void endTimeFromBin( EndianISStream& eiss);
01621 void execBlockNumFromBin( EndianISStream& eiss);
01622 void execBlockUIDFromBin( EndianISStream& eiss);
01623 void projectIdFromBin( EndianISStream& eiss);
01624 void configNameFromBin( EndianISStream& eiss);
01625 void telescopeNameFromBin( EndianISStream& eiss);
01626 void observerNameFromBin( EndianISStream& eiss);
01627 void observingLogFromBin( EndianISStream& eiss);
01628 void sessionReferenceFromBin( EndianISStream& eiss);
01629 void sbSummaryFromBin( EndianISStream& eiss);
01630 void schedulerModeFromBin( EndianISStream& eiss);
01631 void baseRangeMinFromBin( EndianISStream& eiss);
01632 void baseRangeMaxFromBin( EndianISStream& eiss);
01633 void baseRmsMinorFromBin( EndianISStream& eiss);
01634 void baseRmsMajorFromBin( EndianISStream& eiss);
01635 void basePaFromBin( EndianISStream& eiss);
01636 void siteAltitudeFromBin( EndianISStream& eiss);
01637 void siteLongitudeFromBin( EndianISStream& eiss);
01638 void siteLatitudeFromBin( EndianISStream& eiss);
01639 void abortedFromBin( EndianISStream& eiss);
01640 void numAntennaFromBin( EndianISStream& eiss);
01641 void antennaIdFromBin( EndianISStream& eiss);
01642 void sBSummaryIdFromBin( EndianISStream& eiss);
01643 
01644 void releaseDateFromBin( EndianISStream& eiss);
01645 void flagRowFromBin( EndianISStream& eiss);
01646         
01647         
01652          void toBin(EndianOSStream& eoss);
01653                  
01661          static ExecBlockRow* fromBin(EndianISStream& eiss, ExecBlockTable& table, const vector<string>& attributesSeq);         
01662 
01663 };
01664 
01665 } // End namespace asdm
01666 
01667 #endif /* ExecBlock_CLASS */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines