casa  $Rev:20696$
SpectralWindowRow.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 SpectralWindowRow.h
00032  */
00033  
00034 #ifndef SpectralWindowRow_CLASS
00035 #define SpectralWindowRow_CLASS
00036 
00037 #include <vector>
00038 #include <string>
00039 #include <set>
00040 
00041 #ifndef WITHOUT_ACS
00042 #include <asdmIDLC.h>
00043 #endif
00044 
00045 
00046 
00047 
00048 
00049 
00050          
00051 #include <Tag.h>
00052         
00053 
00054          
00055 #include <Frequency.h>
00056         
00057 
00058 
00059 
00060 
00061         
00062 
00063         
00064 #include "CBasebandName.h"
00065         
00066 
00067         
00068 #include "CNetSideband.h"
00069         
00070 
00071         
00072 
00073         
00074 
00075         
00076 #include "CSidebandProcessingMode.h"
00077         
00078 
00079         
00080 
00081         
00082 #include "CWindowFunction.h"
00083         
00084 
00085         
00086 
00087         
00088 
00089         
00090 
00091         
00092 
00093         
00094 
00095         
00096 #include "CCorrelationBit.h"
00097         
00098 
00099         
00100 
00101         
00102 
00103         
00104 
00105         
00106 
00107         
00108 
00109         
00110 #include "CFrequencyReferenceCode.h"
00111         
00112 
00113         
00114 
00115         
00116 
00117         
00118 
00119         
00120 
00121         
00122 
00123         
00124 
00125         
00126 
00127         
00128 #include "CSpectralResolutionType.h"
00129         
00130 
00131 
00132 
00133 #include <ConversionException.h>
00134 #include <NoSuchRow.h>
00135 #include <IllegalAccessException.h>
00136 
00137 #include <RowTransformer.h>
00138 //#include <TableStreamReader.h>
00139 
00140 /*\file SpectralWindow.h
00141     \brief Generated from model's revision "1.62", branch "HEAD"
00142 */
00143 
00144 namespace asdm {
00145 
00146 //class asdm::SpectralWindowTable;
00147 
00148 
00149 // class asdm::SpectralWindowRow;
00150 class SpectralWindowRow;
00151 
00152 // class asdm::SpectralWindowRow;
00153 class SpectralWindowRow;
00154 
00155 // class asdm::DopplerRow;
00156 class DopplerRow;
00157         
00158 
00159 class SpectralWindowRow;
00160 typedef void (SpectralWindowRow::*SpectralWindowAttributeFromBin) (EndianIStream& eis);
00161 typedef void (SpectralWindowRow::*SpectralWindowAttributeFromText) (const string& s);
00162 
00169 class SpectralWindowRow {
00170 friend class asdm::SpectralWindowTable;
00171 friend class asdm::RowTransformer<SpectralWindowRow>;
00172 //friend class asdm::TableStreamReader<SpectralWindowTable, SpectralWindowRow>;
00173 
00174 public:
00175 
00176         virtual ~SpectralWindowRow();
00177 
00181         SpectralWindowTable &getTable() const;
00182         
00187         bool isAdded() const;
00188                 
00190         // Intrinsic Table Attributes //
00192         
00193         
00194         // ===> Attribute spectralWindowId
00195         
00196         
00197         
00198 
00199         
00204         Tag getSpectralWindowId() const;
00205         
00206  
00207         
00208         
00209         
00210         
00211 
00212 
00213         
00214         // ===> Attribute basebandName
00215         
00216         
00217         
00218 
00219         
00224         BasebandNameMod::BasebandName getBasebandName() const;
00225         
00226  
00227         
00228         
00236         void setBasebandName (BasebandNameMod::BasebandName basebandName);
00237                 
00238         
00239         
00240         
00241 
00242 
00243         
00244         // ===> Attribute netSideband
00245         
00246         
00247         
00248 
00249         
00254         NetSidebandMod::NetSideband getNetSideband() const;
00255         
00256  
00257         
00258         
00266         void setNetSideband (NetSidebandMod::NetSideband netSideband);
00267                 
00268         
00269         
00270         
00271 
00272 
00273         
00274         // ===> Attribute numChan
00275         
00276         
00277         
00278 
00279         
00284         int getNumChan() const;
00285         
00286  
00287         
00288         
00296         void setNumChan (int numChan);
00297                 
00298         
00299         
00300         
00301 
00302 
00303         
00304         // ===> Attribute refFreq
00305         
00306         
00307         
00308 
00309         
00314         Frequency getRefFreq() const;
00315         
00316  
00317         
00318         
00326         void setRefFreq (Frequency refFreq);
00327                 
00328         
00329         
00330         
00331 
00332 
00333         
00334         // ===> Attribute sidebandProcessingMode
00335         
00336         
00337         
00338 
00339         
00344         SidebandProcessingModeMod::SidebandProcessingMode getSidebandProcessingMode() const;
00345         
00346  
00347         
00348         
00356         void setSidebandProcessingMode (SidebandProcessingModeMod::SidebandProcessingMode sidebandProcessingMode);
00357                 
00358         
00359         
00360         
00361 
00362 
00363         
00364         // ===> Attribute totBandwidth
00365         
00366         
00367         
00368 
00369         
00374         Frequency getTotBandwidth() const;
00375         
00376  
00377         
00378         
00386         void setTotBandwidth (Frequency totBandwidth);
00387                 
00388         
00389         
00390         
00391 
00392 
00393         
00394         // ===> Attribute windowFunction
00395         
00396         
00397         
00398 
00399         
00404         WindowFunctionMod::WindowFunction getWindowFunction() const;
00405         
00406  
00407         
00408         
00416         void setWindowFunction (WindowFunctionMod::WindowFunction windowFunction);
00417                 
00418         
00419         
00420         
00421 
00422 
00423         
00424         // ===> Attribute chanFreqStart, which is optional
00425         
00426         
00427         
00432         bool isChanFreqStartExists() const;
00433         
00434 
00435         
00441         Frequency getChanFreqStart() const;
00442         
00443  
00444         
00445         
00452         void setChanFreqStart (Frequency chanFreqStart);
00453                 
00454         
00455         
00456         
00460         void clearChanFreqStart ();
00461         
00462 
00463 
00464         
00465         // ===> Attribute chanFreqStep, which is optional
00466         
00467         
00468         
00473         bool isChanFreqStepExists() const;
00474         
00475 
00476         
00482         Frequency getChanFreqStep() const;
00483         
00484  
00485         
00486         
00493         void setChanFreqStep (Frequency chanFreqStep);
00494                 
00495         
00496         
00497         
00501         void clearChanFreqStep ();
00502         
00503 
00504 
00505         
00506         // ===> Attribute chanFreqArray, which is optional
00507         
00508         
00509         
00514         bool isChanFreqArrayExists() const;
00515         
00516 
00517         
00523         vector<Frequency > getChanFreqArray() const;
00524         
00525  
00526         
00527         
00534         void setChanFreqArray (vector<Frequency > chanFreqArray);
00535                 
00536         
00537         
00538         
00542         void clearChanFreqArray ();
00543         
00544 
00545 
00546         
00547         // ===> Attribute chanWidth, which is optional
00548         
00549         
00550         
00555         bool isChanWidthExists() const;
00556         
00557 
00558         
00564         Frequency getChanWidth() const;
00565         
00566  
00567         
00568         
00575         void setChanWidth (Frequency chanWidth);
00576                 
00577         
00578         
00579         
00583         void clearChanWidth ();
00584         
00585 
00586 
00587         
00588         // ===> Attribute chanWidthArray, which is optional
00589         
00590         
00591         
00596         bool isChanWidthArrayExists() const;
00597         
00598 
00599         
00605         vector<Frequency > getChanWidthArray() const;
00606         
00607  
00608         
00609         
00616         void setChanWidthArray (vector<Frequency > chanWidthArray);
00617                 
00618         
00619         
00620         
00624         void clearChanWidthArray ();
00625         
00626 
00627 
00628         
00629         // ===> Attribute correlationBit, which is optional
00630         
00631         
00632         
00637         bool isCorrelationBitExists() const;
00638         
00639 
00640         
00646         CorrelationBitMod::CorrelationBit getCorrelationBit() const;
00647         
00648  
00649         
00650         
00657         void setCorrelationBit (CorrelationBitMod::CorrelationBit correlationBit);
00658                 
00659         
00660         
00661         
00665         void clearCorrelationBit ();
00666         
00667 
00668 
00669         
00670         // ===> Attribute effectiveBw, which is optional
00671         
00672         
00673         
00678         bool isEffectiveBwExists() const;
00679         
00680 
00681         
00687         Frequency getEffectiveBw() const;
00688         
00689  
00690         
00691         
00698         void setEffectiveBw (Frequency effectiveBw);
00699                 
00700         
00701         
00702         
00706         void clearEffectiveBw ();
00707         
00708 
00709 
00710         
00711         // ===> Attribute effectiveBwArray, which is optional
00712         
00713         
00714         
00719         bool isEffectiveBwArrayExists() const;
00720         
00721 
00722         
00728         vector<Frequency > getEffectiveBwArray() const;
00729         
00730  
00731         
00732         
00739         void setEffectiveBwArray (vector<Frequency > effectiveBwArray);
00740                 
00741         
00742         
00743         
00747         void clearEffectiveBwArray ();
00748         
00749 
00750 
00751         
00752         // ===> Attribute freqGroup, which is optional
00753         
00754         
00755         
00760         bool isFreqGroupExists() const;
00761         
00762 
00763         
00769         int getFreqGroup() const;
00770         
00771  
00772         
00773         
00780         void setFreqGroup (int freqGroup);
00781                 
00782         
00783         
00784         
00788         void clearFreqGroup ();
00789         
00790 
00791 
00792         
00793         // ===> Attribute freqGroupName, which is optional
00794         
00795         
00796         
00801         bool isFreqGroupNameExists() const;
00802         
00803 
00804         
00810         string getFreqGroupName() const;
00811         
00812  
00813         
00814         
00821         void setFreqGroupName (string freqGroupName);
00822                 
00823         
00824         
00825         
00829         void clearFreqGroupName ();
00830         
00831 
00832 
00833         
00834         // ===> Attribute lineArray, which is optional
00835         
00836         
00837         
00842         bool isLineArrayExists() const;
00843         
00844 
00845         
00851         vector<bool > getLineArray() const;
00852         
00853  
00854         
00855         
00862         void setLineArray (vector<bool > lineArray);
00863                 
00864         
00865         
00866         
00870         void clearLineArray ();
00871         
00872 
00873 
00874         
00875         // ===> Attribute measFreqRef, which is optional
00876         
00877         
00878         
00883         bool isMeasFreqRefExists() const;
00884         
00885 
00886         
00892         FrequencyReferenceCodeMod::FrequencyReferenceCode getMeasFreqRef() const;
00893         
00894  
00895         
00896         
00903         void setMeasFreqRef (FrequencyReferenceCodeMod::FrequencyReferenceCode measFreqRef);
00904                 
00905         
00906         
00907         
00911         void clearMeasFreqRef ();
00912         
00913 
00914 
00915         
00916         // ===> Attribute name, which is optional
00917         
00918         
00919         
00924         bool isNameExists() const;
00925         
00926 
00927         
00933         string getName() const;
00934         
00935  
00936         
00937         
00944         void setName (string name);
00945                 
00946         
00947         
00948         
00952         void clearName ();
00953         
00954 
00955 
00956         
00957         // ===> Attribute oversampling, which is optional
00958         
00959         
00960         
00965         bool isOversamplingExists() const;
00966         
00967 
00968         
00974         bool getOversampling() const;
00975         
00976  
00977         
00978         
00985         void setOversampling (bool oversampling);
00986                 
00987         
00988         
00989         
00993         void clearOversampling ();
00994         
00995 
00996 
00997         
00998         // ===> Attribute quantization, which is optional
00999         
01000         
01001         
01006         bool isQuantizationExists() const;
01007         
01008 
01009         
01015         bool getQuantization() const;
01016         
01017  
01018         
01019         
01026         void setQuantization (bool quantization);
01027                 
01028         
01029         
01030         
01034         void clearQuantization ();
01035         
01036 
01037 
01038         
01039         // ===> Attribute refChan, which is optional
01040         
01041         
01042         
01047         bool isRefChanExists() const;
01048         
01049 
01050         
01056         double getRefChan() const;
01057         
01058  
01059         
01060         
01067         void setRefChan (double refChan);
01068                 
01069         
01070         
01071         
01075         void clearRefChan ();
01076         
01077 
01078 
01079         
01080         // ===> Attribute resolution, which is optional
01081         
01082         
01083         
01088         bool isResolutionExists() const;
01089         
01090 
01091         
01097         Frequency getResolution() const;
01098         
01099  
01100         
01101         
01108         void setResolution (Frequency resolution);
01109                 
01110         
01111         
01112         
01116         void clearResolution ();
01117         
01118 
01119 
01120         
01121         // ===> Attribute resolutionArray, which is optional
01122         
01123         
01124         
01129         bool isResolutionArrayExists() const;
01130         
01131 
01132         
01138         vector<Frequency > getResolutionArray() const;
01139         
01140  
01141         
01142         
01149         void setResolutionArray (vector<Frequency > resolutionArray);
01150                 
01151         
01152         
01153         
01157         void clearResolutionArray ();
01158         
01159 
01160 
01161         
01162         // ===> Attribute numAssocValues, which is optional
01163         
01164         
01165         
01170         bool isNumAssocValuesExists() const;
01171         
01172 
01173         
01179         int getNumAssocValues() const;
01180         
01181  
01182         
01183         
01190         void setNumAssocValues (int numAssocValues);
01191                 
01192         
01193         
01194         
01198         void clearNumAssocValues ();
01199         
01200 
01201 
01202         
01203         // ===> Attribute assocNature, which is optional
01204         
01205         
01206         
01211         bool isAssocNatureExists() const;
01212         
01213 
01214         
01220         vector<SpectralResolutionTypeMod::SpectralResolutionType > getAssocNature() const;
01221         
01222  
01223         
01224         
01231         void setAssocNature (vector<SpectralResolutionTypeMod::SpectralResolutionType > assocNature);
01232                 
01233         
01234         
01235         
01239         void clearAssocNature ();
01240         
01241 
01242 
01244         // Extrinsic Table Attributes //
01246         
01247         
01248         // ===> Attribute assocSpectralWindowId, which is optional
01249         
01250         
01251         
01256         bool isAssocSpectralWindowIdExists() const;
01257         
01258 
01259         
01265         vector<Tag>  getAssocSpectralWindowId() const;
01266         
01267  
01268         
01269         
01276         void setAssocSpectralWindowId (vector<Tag>  assocSpectralWindowId);
01277                 
01278         
01279         
01280         
01284         void clearAssocSpectralWindowId ();
01285         
01286 
01287 
01288         
01289         // ===> Attribute dopplerId, which is optional
01290         
01291         
01292         
01297         bool isDopplerIdExists() const;
01298         
01299 
01300         
01306         int getDopplerId() const;
01307         
01308  
01309         
01310         
01317         void setDopplerId (int dopplerId);
01318                 
01319         
01320         
01321         
01325         void clearDopplerId ();
01326         
01327 
01328 
01329         
01330         // ===> Attribute imageSpectralWindowId, which is optional
01331         
01332         
01333         
01338         bool isImageSpectralWindowIdExists() const;
01339         
01340 
01341         
01347         Tag getImageSpectralWindowId() const;
01348         
01349  
01350         
01351         
01358         void setImageSpectralWindowId (Tag imageSpectralWindowId);
01359                 
01360         
01361         
01362         
01366         void clearImageSpectralWindowId ();
01367         
01368 
01369 
01371         // Links //
01373         
01374         
01375                 
01382         void setAssocSpectralWindowId (int i, Tag assocSpectralWindowId)  ;
01383                         
01384         
01385 
01386         
01387                  
01392  void addAssocSpectralWindowId(Tag id); 
01393 
01398  void addAssocSpectralWindowId(const vector<Tag> & id); 
01399  
01400 
01406  const Tag getAssocSpectralWindowId(int i);
01407  
01415  SpectralWindowRow* getSpectralWindowUsingAssocSpectralWindowId(int i); 
01416  
01421  vector<SpectralWindowRow *> getSpectralWindowsUsingAssocSpectralWindowId(); 
01422   
01423 
01424         
01425 
01426         
01427 
01428         
01429                 
01438          SpectralWindowRow* getSpectralWindowUsingImageSpectralWindowId();
01439          
01440 
01441         
01442 
01443         
01444 
01445         
01446                 
01447         // ===> Slice link from a row of SpectralWindow table to a collection of row of Doppler table.
01448         
01454         vector <DopplerRow *> getDopplers();
01455         
01456         
01457 
01458         
01459 
01460         
01461         
01462         
01482         bool compareNoAutoInc(BasebandNameMod::BasebandName basebandName, NetSidebandMod::NetSideband netSideband, int numChan, Frequency refFreq, SidebandProcessingModeMod::SidebandProcessingMode sidebandProcessingMode, Frequency totBandwidth, WindowFunctionMod::WindowFunction windowFunction);
01483         
01484         
01485 
01486         
01506         bool compareRequiredValue(BasebandNameMod::BasebandName basebandName, NetSidebandMod::NetSideband netSideband, int numChan, Frequency refFreq, SidebandProcessingModeMod::SidebandProcessingMode sidebandProcessingMode, Frequency totBandwidth, WindowFunctionMod::WindowFunction windowFunction); 
01507                  
01508         
01517         bool equalByRequiredValue(SpectralWindowRow* x) ;
01518         
01519 #ifndef WITHOUT_ACS
01520 
01524         asdmIDL::SpectralWindowRowIDL *toIDL() const;
01525 #endif
01526         
01527 #ifndef WITHOUT_ACS
01528 
01533         void setFromIDL (asdmIDL::SpectralWindowRowIDL x) ;
01534 #endif
01535         
01540         std::string toXML() const;
01541 
01548         void setFromXML (std::string rowDoc) ;
01549 
01552         // binary-deserialization material from an EndianIStream  //
01554 
01555         std::map<std::string, SpectralWindowAttributeFromBin> fromBinMethods;
01556 void spectralWindowIdFromBin( EndianIStream& eis);
01557 void basebandNameFromBin( EndianIStream& eis);
01558 void netSidebandFromBin( EndianIStream& eis);
01559 void numChanFromBin( EndianIStream& eis);
01560 void refFreqFromBin( EndianIStream& eis);
01561 void sidebandProcessingModeFromBin( EndianIStream& eis);
01562 void totBandwidthFromBin( EndianIStream& eis);
01563 void windowFunctionFromBin( EndianIStream& eis);
01564 
01565 void chanFreqStartFromBin( EndianIStream& eis);
01566 void chanFreqStepFromBin( EndianIStream& eis);
01567 void chanFreqArrayFromBin( EndianIStream& eis);
01568 void chanWidthFromBin( EndianIStream& eis);
01569 void chanWidthArrayFromBin( EndianIStream& eis);
01570 void correlationBitFromBin( EndianIStream& eis);
01571 void effectiveBwFromBin( EndianIStream& eis);
01572 void effectiveBwArrayFromBin( EndianIStream& eis);
01573 void freqGroupFromBin( EndianIStream& eis);
01574 void freqGroupNameFromBin( EndianIStream& eis);
01575 void lineArrayFromBin( EndianIStream& eis);
01576 void measFreqRefFromBin( EndianIStream& eis);
01577 void nameFromBin( EndianIStream& eis);
01578 void oversamplingFromBin( EndianIStream& eis);
01579 void quantizationFromBin( EndianIStream& eis);
01580 void refChanFromBin( EndianIStream& eis);
01581 void resolutionFromBin( EndianIStream& eis);
01582 void resolutionArrayFromBin( EndianIStream& eis);
01583 void numAssocValuesFromBin( EndianIStream& eis);
01584 void assocNatureFromBin( EndianIStream& eis);
01585 void assocSpectralWindowIdFromBin( EndianIStream& eis);
01586 void imageSpectralWindowIdFromBin( EndianIStream& eis);
01587 void dopplerIdFromBin( EndianIStream& eis);
01588 
01589 
01597          static SpectralWindowRow* fromBin(EndianIStream& eis, SpectralWindowTable& table, const std::vector<std::string>& attributesSeq);       
01598  
01605          void fromText(const std::string& attributeName, const std::string&  t);
01607 
01608 private:
01612         SpectralWindowTable &table;
01616         bool hasBeenAdded;
01617 
01618         // This method is used by the Table class when this row is added to the table.
01619         void isAdded(bool added);
01620 
01621 
01630         SpectralWindowRow (SpectralWindowTable &table);
01631 
01649          SpectralWindowRow (SpectralWindowTable &table, SpectralWindowRow &row);
01650                 
01652         // Intrinsic Table Attributes //
01654         
01655         
01656         // ===> Attribute spectralWindowId
01657         
01658         
01659 
01660         Tag spectralWindowId;
01661 
01662         
01663         
01664         
01674         void setSpectralWindowId (Tag spectralWindowId);
01675                 
01676         
01677 
01678         
01679         // ===> Attribute basebandName
01680         
01681         
01682 
01683         BasebandNameMod::BasebandName basebandName;
01684 
01685         
01686         
01687         
01688 
01689         
01690         // ===> Attribute netSideband
01691         
01692         
01693 
01694         NetSidebandMod::NetSideband netSideband;
01695 
01696         
01697         
01698         
01699 
01700         
01701         // ===> Attribute numChan
01702         
01703         
01704 
01705         int numChan;
01706 
01707         
01708         
01709         
01710 
01711         
01712         // ===> Attribute refFreq
01713         
01714         
01715 
01716         Frequency refFreq;
01717 
01718         
01719         
01720         
01721 
01722         
01723         // ===> Attribute sidebandProcessingMode
01724         
01725         
01726 
01727         SidebandProcessingModeMod::SidebandProcessingMode sidebandProcessingMode;
01728 
01729         
01730         
01731         
01732 
01733         
01734         // ===> Attribute totBandwidth
01735         
01736         
01737 
01738         Frequency totBandwidth;
01739 
01740         
01741         
01742         
01743 
01744         
01745         // ===> Attribute windowFunction
01746         
01747         
01748 
01749         WindowFunctionMod::WindowFunction windowFunction;
01750 
01751         
01752         
01753         
01754 
01755         
01756         // ===> Attribute chanFreqStart, which is optional
01757         
01758         
01759         bool chanFreqStartExists;
01760         
01761 
01762         Frequency chanFreqStart;
01763 
01764         
01765         
01766         
01767 
01768         
01769         // ===> Attribute chanFreqStep, which is optional
01770         
01771         
01772         bool chanFreqStepExists;
01773         
01774 
01775         Frequency chanFreqStep;
01776 
01777         
01778         
01779         
01780 
01781         
01782         // ===> Attribute chanFreqArray, which is optional
01783         
01784         
01785         bool chanFreqArrayExists;
01786         
01787 
01788         vector<Frequency > chanFreqArray;
01789 
01790         
01791         
01792         
01793 
01794         
01795         // ===> Attribute chanWidth, which is optional
01796         
01797         
01798         bool chanWidthExists;
01799         
01800 
01801         Frequency chanWidth;
01802 
01803         
01804         
01805         
01806 
01807         
01808         // ===> Attribute chanWidthArray, which is optional
01809         
01810         
01811         bool chanWidthArrayExists;
01812         
01813 
01814         vector<Frequency > chanWidthArray;
01815 
01816         
01817         
01818         
01819 
01820         
01821         // ===> Attribute correlationBit, which is optional
01822         
01823         
01824         bool correlationBitExists;
01825         
01826 
01827         CorrelationBitMod::CorrelationBit correlationBit;
01828 
01829         
01830         
01831         
01832 
01833         
01834         // ===> Attribute effectiveBw, which is optional
01835         
01836         
01837         bool effectiveBwExists;
01838         
01839 
01840         Frequency effectiveBw;
01841 
01842         
01843         
01844         
01845 
01846         
01847         // ===> Attribute effectiveBwArray, which is optional
01848         
01849         
01850         bool effectiveBwArrayExists;
01851         
01852 
01853         vector<Frequency > effectiveBwArray;
01854 
01855         
01856         
01857         
01858 
01859         
01860         // ===> Attribute freqGroup, which is optional
01861         
01862         
01863         bool freqGroupExists;
01864         
01865 
01866         int freqGroup;
01867 
01868         
01869         
01870         
01871 
01872         
01873         // ===> Attribute freqGroupName, which is optional
01874         
01875         
01876         bool freqGroupNameExists;
01877         
01878 
01879         string freqGroupName;
01880 
01881         
01882         
01883         
01884 
01885         
01886         // ===> Attribute lineArray, which is optional
01887         
01888         
01889         bool lineArrayExists;
01890         
01891 
01892         vector<bool > lineArray;
01893 
01894         
01895         
01896         
01897 
01898         
01899         // ===> Attribute measFreqRef, which is optional
01900         
01901         
01902         bool measFreqRefExists;
01903         
01904 
01905         FrequencyReferenceCodeMod::FrequencyReferenceCode measFreqRef;
01906 
01907         
01908         
01909         
01910 
01911         
01912         // ===> Attribute name, which is optional
01913         
01914         
01915         bool nameExists;
01916         
01917 
01918         string name;
01919 
01920         
01921         
01922         
01923 
01924         
01925         // ===> Attribute oversampling, which is optional
01926         
01927         
01928         bool oversamplingExists;
01929         
01930 
01931         bool oversampling;
01932 
01933         
01934         
01935         
01936 
01937         
01938         // ===> Attribute quantization, which is optional
01939         
01940         
01941         bool quantizationExists;
01942         
01943 
01944         bool quantization;
01945 
01946         
01947         
01948         
01949 
01950         
01951         // ===> Attribute refChan, which is optional
01952         
01953         
01954         bool refChanExists;
01955         
01956 
01957         double refChan;
01958 
01959         
01960         
01961         
01962 
01963         
01964         // ===> Attribute resolution, which is optional
01965         
01966         
01967         bool resolutionExists;
01968         
01969 
01970         Frequency resolution;
01971 
01972         
01973         
01974         
01975 
01976         
01977         // ===> Attribute resolutionArray, which is optional
01978         
01979         
01980         bool resolutionArrayExists;
01981         
01982 
01983         vector<Frequency > resolutionArray;
01984 
01985         
01986         
01987         
01988 
01989         
01990         // ===> Attribute numAssocValues, which is optional
01991         
01992         
01993         bool numAssocValuesExists;
01994         
01995 
01996         int numAssocValues;
01997 
01998         
01999         
02000         
02001 
02002         
02003         // ===> Attribute assocNature, which is optional
02004         
02005         
02006         bool assocNatureExists;
02007         
02008 
02009         vector<SpectralResolutionTypeMod::SpectralResolutionType > assocNature;
02010 
02011         
02012         
02013         
02014 
02016         // Extrinsic Table Attributes //
02018         
02019         
02020         // ===> Attribute assocSpectralWindowId, which is optional
02021         
02022         
02023         bool assocSpectralWindowIdExists;
02024         
02025 
02026         vector<Tag>  assocSpectralWindowId;
02027 
02028         
02029         
02030         
02031 
02032         
02033         // ===> Attribute dopplerId, which is optional
02034         
02035         
02036         bool dopplerIdExists;
02037         
02038 
02039         int dopplerId;
02040 
02041         
02042         
02043         
02044 
02045         
02046         // ===> Attribute imageSpectralWindowId, which is optional
02047         
02048         
02049         bool imageSpectralWindowIdExists;
02050         
02051 
02052         Tag imageSpectralWindowId;
02053 
02054         
02055         
02056         
02057 
02059         // Links //
02061         
02062         
02063                 
02064 
02065 
02066         
02067 
02068         
02069                 
02070 
02071          
02072 
02073         
02074 
02075         
02076                 
02077 
02078 
02079         
02080 
02081         
02082 /*
02084         // binary-deserialization material from an EndianIStream  //
02086         std::map<std::string, SpectralWindowAttributeFromBin> fromBinMethods;
02087 void spectralWindowIdFromBin( EndianIStream& eis);
02088 void basebandNameFromBin( EndianIStream& eis);
02089 void netSidebandFromBin( EndianIStream& eis);
02090 void numChanFromBin( EndianIStream& eis);
02091 void refFreqFromBin( EndianIStream& eis);
02092 void sidebandProcessingModeFromBin( EndianIStream& eis);
02093 void totBandwidthFromBin( EndianIStream& eis);
02094 void windowFunctionFromBin( EndianIStream& eis);
02095 
02096 void chanFreqStartFromBin( EndianIStream& eis);
02097 void chanFreqStepFromBin( EndianIStream& eis);
02098 void chanFreqArrayFromBin( EndianIStream& eis);
02099 void chanWidthFromBin( EndianIStream& eis);
02100 void chanWidthArrayFromBin( EndianIStream& eis);
02101 void correlationBitFromBin( EndianIStream& eis);
02102 void effectiveBwFromBin( EndianIStream& eis);
02103 void effectiveBwArrayFromBin( EndianIStream& eis);
02104 void freqGroupFromBin( EndianIStream& eis);
02105 void freqGroupNameFromBin( EndianIStream& eis);
02106 void lineArrayFromBin( EndianIStream& eis);
02107 void measFreqRefFromBin( EndianIStream& eis);
02108 void nameFromBin( EndianIStream& eis);
02109 void oversamplingFromBin( EndianIStream& eis);
02110 void quantizationFromBin( EndianIStream& eis);
02111 void refChanFromBin( EndianIStream& eis);
02112 void resolutionFromBin( EndianIStream& eis);
02113 void resolutionArrayFromBin( EndianIStream& eis);
02114 void numAssocValuesFromBin( EndianIStream& eis);
02115 void assocNatureFromBin( EndianIStream& eis);
02116 void assocSpectralWindowIdFromBin( EndianIStream& eis);
02117 void imageSpectralWindowIdFromBin( EndianIStream& eis);
02118 void dopplerIdFromBin( EndianIStream& eis);
02119 
02120 */
02121         
02123         // text-deserialization material //
02125         std::map<std::string, SpectralWindowAttributeFromText> fromTextMethods;
02126         
02127 void spectralWindowIdFromText (const string & s);
02128         
02129         
02130 void basebandNameFromText (const string & s);
02131         
02132         
02133 void netSidebandFromText (const string & s);
02134         
02135         
02136 void numChanFromText (const string & s);
02137         
02138         
02139 void refFreqFromText (const string & s);
02140         
02141         
02142 void sidebandProcessingModeFromText (const string & s);
02143         
02144         
02145 void totBandwidthFromText (const string & s);
02146         
02147         
02148 void windowFunctionFromText (const string & s);
02149         
02150 
02151         
02152 void chanFreqStartFromText (const string & s);
02153         
02154         
02155 void chanFreqStepFromText (const string & s);
02156         
02157         
02158 void chanFreqArrayFromText (const string & s);
02159         
02160         
02161 void chanWidthFromText (const string & s);
02162         
02163         
02164 void chanWidthArrayFromText (const string & s);
02165         
02166         
02167 void correlationBitFromText (const string & s);
02168         
02169         
02170 void effectiveBwFromText (const string & s);
02171         
02172         
02173 void effectiveBwArrayFromText (const string & s);
02174         
02175         
02176 void freqGroupFromText (const string & s);
02177         
02178         
02179 void freqGroupNameFromText (const string & s);
02180         
02181         
02182 void lineArrayFromText (const string & s);
02183         
02184         
02185 void measFreqRefFromText (const string & s);
02186         
02187         
02188 void nameFromText (const string & s);
02189         
02190         
02191 void oversamplingFromText (const string & s);
02192         
02193         
02194 void quantizationFromText (const string & s);
02195         
02196         
02197 void refChanFromText (const string & s);
02198         
02199         
02200 void resolutionFromText (const string & s);
02201         
02202         
02203 void resolutionArrayFromText (const string & s);
02204         
02205         
02206 void numAssocValuesFromText (const string & s);
02207         
02208         
02209 void assocNatureFromText (const string & s);
02210         
02211         
02212 void assocSpectralWindowIdFromText (const string & s);
02213         
02214         
02215 void imageSpectralWindowIdFromText (const string & s);
02216         
02217         
02218 void dopplerIdFromText (const string & s);
02219         
02220         
02221         
02226          void toBin(EndianOSStream& eoss);
02227                  
02237 };
02238 
02239 } // End namespace asdm
02240 
02241 #endif /* SpectralWindow_CLASS */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines