SubscanRow.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 SubscanRow.h
00032  */
00033  
00034 #ifndef SubscanRow_CLASS
00035 #define SubscanRow_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::SubscanRowIDL;
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 #include "CSubscanIntent.h"
00086 using namespace SubscanIntentMod;
00087         
00088 
00089         
00090 #include "CSwitchingMode.h"
00091 using namespace SwitchingModeMod;
00092         
00093 
00094         
00095 
00096         
00097 
00098         
00099 
00100         
00101 
00102         
00103 #include "CCorrelatorCalibration.h"
00104 using namespace CorrelatorCalibrationMod;
00105         
00106 
00107 
00108 
00109 using asdm::Angle;
00110 using asdm::AngularRate;
00111 using asdm::ArrayTime;
00112 using asdm::Complex;
00113 using asdm::Entity;
00114 using asdm::EntityId;
00115 using asdm::EntityRef;
00116 using asdm::Flux;
00117 using asdm::Frequency;
00118 using asdm::Humidity;
00119 using asdm::Interval;
00120 using asdm::Length;
00121 using asdm::Pressure;
00122 using asdm::Speed;
00123 using asdm::Tag;
00124 using asdm::Temperature;
00125 using asdm::ConversionException;
00126 using asdm::NoSuchRow;
00127 using asdm::IllegalAccessException;
00128 
00129 /*\file Subscan.h
00130     \brief Generated from model's revision "1.41", branch "HEAD"
00131 */
00132 
00133 namespace asdm {
00134 
00135 //class asdm::SubscanTable;
00136 
00137 
00138 // class asdm::ExecBlockRow;
00139 class ExecBlockRow;
00140         
00141 
00148 class SubscanRow {
00149 friend class asdm::SubscanTable;
00150 
00151 public:
00152 
00153         virtual ~SubscanRow();
00154 
00158         SubscanTable &getTable() const;
00159         
00160 #ifndef WITHOUT_ACS
00161 
00165         SubscanRowIDL *toIDL() const;
00166 #endif
00167         
00168 #ifndef WITHOUT_ACS
00169 
00173         void setFromIDL (SubscanRowIDL x) throw(ConversionException);
00174 #endif
00175         
00180         string toXML() const;
00181 
00187         void setFromXML (string rowDoc) throw(ConversionException);
00188         
00190         // Intrinsic Table Attributes //
00192         
00193         
00194         // ===> Attribute subscanNumber
00195         
00196         
00197         
00198 
00199         
00204         int getSubscanNumber() const;
00205         
00206  
00207         
00208         
00215         void setSubscanNumber (int subscanNumber) throw(IllegalAccessException);
00216                 
00217         
00218         
00219         
00220 
00221 
00222         
00223         // ===> Attribute startTime
00224         
00225         
00226         
00227 
00228         
00233         ArrayTime getStartTime() const;
00234         
00235  
00236         
00237         
00243         void setStartTime (ArrayTime startTime);
00244                 
00245         
00246         
00247         
00248 
00249 
00250         
00251         // ===> Attribute endTime
00252         
00253         
00254         
00255 
00256         
00261         ArrayTime getEndTime() const;
00262         
00263  
00264         
00265         
00271         void setEndTime (ArrayTime endTime);
00272                 
00273         
00274         
00275         
00276 
00277 
00278         
00279         // ===> Attribute subscanIntent
00280         
00281         
00282         
00283 
00284         
00289         SubscanIntent getSubscanIntent() const;
00290         
00291  
00292         
00293         
00299         void setSubscanIntent (SubscanIntent subscanIntent);
00300                 
00301         
00302         
00303         
00304 
00305 
00306         
00307         // ===> Attribute subscanMode, which is optional
00308         
00309         
00310         
00315         bool isSubscanModeExists() const;
00316         
00317 
00318         
00324         SwitchingMode getSubscanMode() const throw(IllegalAccessException);
00325         
00326  
00327         
00328         
00334         void setSubscanMode (SwitchingMode subscanMode);
00335                 
00336         
00337         
00338         
00342         void clearSubscanMode ();
00343         
00344 
00345 
00346         
00347         // ===> Attribute numberIntegration
00348         
00349         
00350         
00351 
00352         
00357         int getNumberIntegration() const;
00358         
00359  
00360         
00361         
00367         void setNumberIntegration (int numberIntegration);
00368                 
00369         
00370         
00371         
00372 
00373 
00374         
00375         // ===> Attribute numberSubintegration
00376         
00377         
00378         
00379 
00380         
00385         vector<int > getNumberSubintegration() const;
00386         
00387  
00388         
00389         
00395         void setNumberSubintegration (vector<int > numberSubintegration);
00396                 
00397         
00398         
00399         
00400 
00401 
00402         
00403         // ===> Attribute flagRow
00404         
00405         
00406         
00407 
00408         
00413         bool getFlagRow() const;
00414         
00415  
00416         
00417         
00423         void setFlagRow (bool flagRow);
00424                 
00425         
00426         
00427         
00428 
00429 
00430         
00431         // ===> Attribute fieldName
00432         
00433         
00434         
00435 
00436         
00441         string getFieldName() const;
00442         
00443  
00444         
00445         
00451         void setFieldName (string fieldName);
00452                 
00453         
00454         
00455         
00456 
00457 
00458         
00459         // ===> Attribute correlatorCalibration, which is optional
00460         
00461         
00462         
00467         bool isCorrelatorCalibrationExists() const;
00468         
00469 
00470         
00476         CorrelatorCalibration getCorrelatorCalibration() const throw(IllegalAccessException);
00477         
00478  
00479         
00480         
00486         void setCorrelatorCalibration (CorrelatorCalibration correlatorCalibration);
00487                 
00488         
00489         
00490         
00494         void clearCorrelatorCalibration ();
00495         
00496 
00497 
00499         // Extrinsic Table Attributes //
00501         
00502         
00503         // ===> Attribute execBlockId
00504         
00505         
00506         
00507 
00508         
00513         Tag getExecBlockId() const;
00514         
00515  
00516         
00517         
00524         void setExecBlockId (Tag execBlockId) throw(IllegalAccessException);
00525                 
00526         
00527         
00528         
00529 
00530 
00531         
00532         // ===> Attribute scanNumber
00533         
00534         
00535         
00536 
00537         
00542         int getScanNumber() const;
00543         
00544  
00545         
00546         
00553         void setScanNumber (int scanNumber) throw(IllegalAccessException);
00554                 
00555         
00556         
00557         
00558 
00559 
00561         // Links //
00563         
00564         
00565 
00566         
00567                 
00574          ExecBlockRow* getExecBlockUsingExecBlockId();
00575          
00576 
00577         
00578 
00579         
00580         
00581         
00586         bool compareNoAutoInc(Tag execBlockId, int scanNumber, int subscanNumber, ArrayTime startTime, ArrayTime endTime, SubscanIntent subscanIntent, int numberIntegration, vector<int > numberSubintegration, bool flagRow, string fieldName);
00587         
00588         
00589 
00590         
00591         bool compareRequiredValue(ArrayTime startTime, ArrayTime endTime, SubscanIntent subscanIntent, int numberIntegration, vector<int > numberSubintegration, bool flagRow, string fieldName); 
00592                  
00593         
00602         bool equalByRequiredValue(SubscanRow* x) ;
00603 
00604 private:
00608         SubscanTable &table;
00612         bool hasBeenAdded;
00613 
00614         // This method is used by the Table class when this row is added to the table.
00615         void isAdded();
00616 
00617 
00626         SubscanRow (SubscanTable &table);
00627 
00645          SubscanRow (SubscanTable &table, SubscanRow &row);
00646                 
00648         // Intrinsic Table Attributes //
00650         
00651         
00652         // ===> Attribute subscanNumber
00653         
00654         
00655 
00656         int subscanNumber;
00657 
00658         
00659         
00660         
00661 
00662         
00663         // ===> Attribute startTime
00664         
00665         
00666 
00667         ArrayTime startTime;
00668 
00669         
00670         
00671         
00672 
00673         
00674         // ===> Attribute endTime
00675         
00676         
00677 
00678         ArrayTime endTime;
00679 
00680         
00681         
00682         
00683 
00684         
00685         // ===> Attribute subscanIntent
00686         
00687         
00688 
00689         SubscanIntent subscanIntent;
00690 
00691         
00692         
00693         
00694 
00695         
00696         // ===> Attribute subscanMode, which is optional
00697         
00698         
00699         bool subscanModeExists;
00700         
00701 
00702         SwitchingMode subscanMode;
00703 
00704         
00705         
00706         
00707 
00708         
00709         // ===> Attribute numberIntegration
00710         
00711         
00712 
00713         int numberIntegration;
00714 
00715         
00716         
00717         
00718 
00719         
00720         // ===> Attribute numberSubintegration
00721         
00722         
00723 
00724         vector<int > numberSubintegration;
00725 
00726         
00727         
00728         
00729 
00730         
00731         // ===> Attribute flagRow
00732         
00733         
00734 
00735         bool flagRow;
00736 
00737         
00738         
00739         
00740 
00741         
00742         // ===> Attribute fieldName
00743         
00744         
00745 
00746         string fieldName;
00747 
00748         
00749         
00750         
00751 
00752         
00753         // ===> Attribute correlatorCalibration, which is optional
00754         
00755         
00756         bool correlatorCalibrationExists;
00757         
00758 
00759         CorrelatorCalibration correlatorCalibration;
00760 
00761         
00762         
00763         
00764 
00766         // Extrinsic Table Attributes //
00768         
00769         
00770         // ===> Attribute execBlockId
00771         
00772         
00773 
00774         Tag execBlockId;
00775 
00776         
00777         
00778         
00779 
00780         
00781         // ===> Attribute scanNumber
00782         
00783         
00784 
00785         int scanNumber;
00786 
00787         
00788         
00789         
00790 
00792         // Links //
00794         
00795         
00796                 
00797 
00798          
00799 
00800         
00801 
00802 
00803 };
00804 
00805 } // End namespace asdm
00806 
00807 #endif /* Subscan_CLASS */

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