LCOV - code coverage report
Current view: top level - alma/ASDM - CalPointingModelRow.cc (source / functions) Hit Total Coverage
Test: casacpp_coverage.info Lines: 0 576 0.0 %
Date: 2024-10-04 18:58:15 Functions: 0 101 0.0 %

          Line data    Source code
       1             : 
       2             : /*
       3             :  * ALMA - Atacama Large Millimeter Array
       4             :  * (c) European Southern Observatory, 2002
       5             :  * (c) Associated Universities Inc., 2002
       6             :  * Copyright by ESO (in the framework of the ALMA collaboration),
       7             :  * Copyright by AUI (in the framework of the ALMA collaboration),
       8             :  * All rights reserved.
       9             :  * 
      10             :  * This library is free software; you can redistribute it and/or
      11             :  * modify it under the terms of the GNU Lesser General Public
      12             :  * License as published by the Free software Foundation; either
      13             :  * version 2.1 of the License, or (at your option) any later version.
      14             :  * 
      15             :  * This library is distributed in the hope that it will be useful,
      16             :  * but WITHOUT ANY WARRANTY, without even the implied warranty of
      17             :  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      18             :  * Lesser General Public License for more details.
      19             :  * 
      20             :  * You should have received a copy of the GNU Lesser General Public
      21             :  * License along with this library; if not, write to the Free Software
      22             :  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
      23             :  * MA 02111-1307  USA
      24             :  *
      25             :  * Warning!
      26             :  *  -------------------------------------------------------------------- 
      27             :  * | This is generated code!  Do not modify this file.                  |
      28             :  * | If you do, all changes will be lost when the file is re-generated. |
      29             :  *  --------------------------------------------------------------------
      30             :  *
      31             :  * File CalPointingModelRow.cpp
      32             :  */
      33             :  
      34             : #include <vector>
      35             : #include <set>
      36             : 
      37             : #include <alma/ASDM/ASDM.h>
      38             : #include <alma/ASDM/CalPointingModelRow.h>
      39             : #include <alma/ASDM/CalPointingModelTable.h>
      40             : 
      41             : #include <alma/ASDM/CalDataTable.h>
      42             : #include <alma/ASDM/CalDataRow.h>
      43             : 
      44             : #include <alma/ASDM/CalReductionTable.h>
      45             : #include <alma/ASDM/CalReductionRow.h>
      46             :         
      47             : 
      48             : using asdm::ASDM;
      49             : using asdm::CalPointingModelRow;
      50             : using asdm::CalPointingModelTable;
      51             : 
      52             : using asdm::CalDataTable;
      53             : using asdm::CalDataRow;
      54             : 
      55             : using asdm::CalReductionTable;
      56             : using asdm::CalReductionRow;
      57             : 
      58             : 
      59             : #include <alma/ASDM/Parser.h>
      60             : 
      61             : #include <alma/ASDM/EnumerationParser.h>
      62             : #include <alma/ASDM/ASDMValuesParser.h>
      63             :  
      64             : #include <alma/ASDM/InvalidArgumentException.h>
      65             : 
      66             : using namespace std;
      67             : 
      68             : namespace asdm {
      69           0 :         CalPointingModelRow::~CalPointingModelRow() {
      70           0 :         }
      71             : 
      72             :         /**
      73             :          * Return the table to which this row belongs.
      74             :          */
      75           0 :         CalPointingModelTable &CalPointingModelRow::getTable() const {
      76           0 :                 return table;
      77             :         }
      78             : 
      79           0 :         bool CalPointingModelRow::isAdded() const {
      80           0 :                 return hasBeenAdded;
      81             :         }       
      82             : 
      83           0 :         void CalPointingModelRow::isAdded(bool added) {
      84           0 :                 hasBeenAdded = added;
      85           0 :         }
      86             :         
      87             : #ifndef WITHOUT_ACS
      88             :         using asdmIDL::CalPointingModelRowIDL;
      89             : #endif
      90             :         
      91             : #ifndef WITHOUT_ACS
      92             :         /**
      93             :          * Return this row in the form of an IDL struct.
      94             :          * @return The values of this row as a CalPointingModelRowIDL struct.
      95             :          */
      96             :         CalPointingModelRowIDL *CalPointingModelRow::toIDL() const {
      97             :                 CalPointingModelRowIDL *x = new CalPointingModelRowIDL ();
      98             :                 
      99             :                 // Fill the IDL structure.
     100             :         
     101             :                 
     102             :         
     103             :                 
     104             :                 
     105             :                 
     106             :                         
     107             :                                 
     108             :                 x->antennaName = CORBA::string_dup(antennaName.c_str());
     109             :                                 
     110             :                         
     111             :                 
     112             :         
     113             : 
     114             :         
     115             :                 
     116             :                 
     117             :                 
     118             :                         
     119             :                                 
     120             :                 x->receiverBand = receiverBand;
     121             :                                 
     122             :                         
     123             :                 
     124             :         
     125             : 
     126             :         
     127             :                 
     128             :                 
     129             :                 
     130             :                         
     131             :                 x->startValidTime = startValidTime.toIDLArrayTime();
     132             :                         
     133             :                 
     134             :         
     135             : 
     136             :         
     137             :                 
     138             :                 
     139             :                 
     140             :                         
     141             :                 x->endValidTime = endValidTime.toIDLArrayTime();
     142             :                         
     143             :                 
     144             :         
     145             : 
     146             :         
     147             :                 
     148             :                 
     149             :                 
     150             :                         
     151             :                                 
     152             :                 x->antennaMake = antennaMake;
     153             :                                 
     154             :                         
     155             :                 
     156             :         
     157             : 
     158             :         
     159             :                 
     160             :                 
     161             :                 
     162             :                         
     163             :                                 
     164             :                 x->pointingModelMode = pointingModelMode;
     165             :                                 
     166             :                         
     167             :                 
     168             :         
     169             : 
     170             :         
     171             :                 
     172             :                 
     173             :                 
     174             :                         
     175             :                                 
     176             :                 x->polarizationType = polarizationType;
     177             :                                 
     178             :                         
     179             :                 
     180             :         
     181             : 
     182             :         
     183             :                 
     184             :                 
     185             :                 
     186             :                         
     187             :                                 
     188             :                 x->numCoeff = numCoeff;
     189             :                                 
     190             :                         
     191             :                 
     192             :         
     193             : 
     194             :         
     195             :                 
     196             :                 
     197             :                 
     198             :                         
     199             :                 x->coeffName.length(coeffName.size());
     200             :                 for (unsigned int i = 0; i < coeffName.size(); ++i) {
     201             :                         
     202             :                                 
     203             :                         x->coeffName[i] = CORBA::string_dup(coeffName.at(i).c_str());
     204             :                                 
     205             :                         
     206             :                 }
     207             :                         
     208             :                 
     209             :         
     210             : 
     211             :         
     212             :                 
     213             :                 
     214             :                 
     215             :                         
     216             :                 x->coeffVal.length(coeffVal.size());
     217             :                 for (unsigned int i = 0; i < coeffVal.size(); ++i) {
     218             :                         
     219             :                                 
     220             :                         x->coeffVal[i] = coeffVal.at(i);
     221             :                                 
     222             :                         
     223             :                 }
     224             :                         
     225             :                 
     226             :         
     227             : 
     228             :         
     229             :                 
     230             :                 
     231             :                 
     232             :                         
     233             :                 x->coeffError.length(coeffError.size());
     234             :                 for (unsigned int i = 0; i < coeffError.size(); ++i) {
     235             :                         
     236             :                                 
     237             :                         x->coeffError[i] = coeffError.at(i);
     238             :                                 
     239             :                         
     240             :                 }
     241             :                         
     242             :                 
     243             :         
     244             : 
     245             :         
     246             :                 
     247             :                 
     248             :                 
     249             :                         
     250             :                 x->coeffFixed.length(coeffFixed.size());
     251             :                 for (unsigned int i = 0; i < coeffFixed.size(); ++i) {
     252             :                         
     253             :                                 
     254             :                         x->coeffFixed[i] = coeffFixed.at(i);
     255             :                                 
     256             :                         
     257             :                 }
     258             :                         
     259             :                 
     260             :         
     261             : 
     262             :         
     263             :                 
     264             :                 
     265             :                 
     266             :                         
     267             :                 x->azimuthRMS = azimuthRMS.toIDLAngle();
     268             :                         
     269             :                 
     270             :         
     271             : 
     272             :         
     273             :                 
     274             :                 
     275             :                 
     276             :                         
     277             :                 x->elevationRms = elevationRms.toIDLAngle();
     278             :                         
     279             :                 
     280             :         
     281             : 
     282             :         
     283             :                 
     284             :                 
     285             :                 
     286             :                         
     287             :                 x->skyRMS = skyRMS.toIDLAngle();
     288             :                         
     289             :                 
     290             :         
     291             : 
     292             :         
     293             :                 
     294             :                 
     295             :                 
     296             :                         
     297             :                                 
     298             :                 x->reducedChiSquared = reducedChiSquared;
     299             :                                 
     300             :                         
     301             :                 
     302             :         
     303             : 
     304             :         
     305             :                 
     306             :                 
     307             :                 x->numObsExists = numObsExists;
     308             :                 
     309             :                 
     310             :                         
     311             :                                 
     312             :                 x->numObs = numObs;
     313             :                                 
     314             :                         
     315             :                 
     316             :         
     317             : 
     318             :         
     319             :                 
     320             :                 
     321             :                 x->coeffFormulaExists = coeffFormulaExists;
     322             :                 
     323             :                 
     324             :                         
     325             :                 x->coeffFormula.length(coeffFormula.size());
     326             :                 for (unsigned int i = 0; i < coeffFormula.size(); ++i) {
     327             :                         
     328             :                                 
     329             :                         x->coeffFormula[i] = CORBA::string_dup(coeffFormula.at(i).c_str());
     330             :                                 
     331             :                         
     332             :                 }
     333             :                         
     334             :                 
     335             :         
     336             : 
     337             :         
     338             :         
     339             :                 
     340             :         
     341             :         
     342             :                 
     343             :                 
     344             :                 
     345             :                         
     346             :                 x->calDataId = calDataId.toIDLTag();
     347             :                         
     348             :                                 
     349             :         
     350             : 
     351             :         
     352             :         
     353             :                 
     354             :                 
     355             :                 
     356             :                         
     357             :                 x->calReductionId = calReductionId.toIDLTag();
     358             :                         
     359             :                                 
     360             :         
     361             : 
     362             :         
     363             :                 
     364             :         
     365             : 
     366             :         
     367             : 
     368             :                 
     369             :                 return x;
     370             :         
     371             :         }
     372             :         
     373             :         void CalPointingModelRow::toIDL(asdmIDL::CalPointingModelRowIDL& x) const {
     374             :                 // Set the x's fields.
     375             :         
     376             :                 
     377             :         
     378             :                 
     379             :                 
     380             :                 
     381             :                         
     382             :                                 
     383             :                 x.antennaName = CORBA::string_dup(antennaName.c_str());
     384             :                                 
     385             :                         
     386             :                 
     387             :         
     388             : 
     389             :         
     390             :                 
     391             :                 
     392             :                 
     393             :                         
     394             :                                 
     395             :                 x.receiverBand = receiverBand;
     396             :                                 
     397             :                         
     398             :                 
     399             :         
     400             : 
     401             :         
     402             :                 
     403             :                 
     404             :                 
     405             :                         
     406             :                 x.startValidTime = startValidTime.toIDLArrayTime();
     407             :                         
     408             :                 
     409             :         
     410             : 
     411             :         
     412             :                 
     413             :                 
     414             :                 
     415             :                         
     416             :                 x.endValidTime = endValidTime.toIDLArrayTime();
     417             :                         
     418             :                 
     419             :         
     420             : 
     421             :         
     422             :                 
     423             :                 
     424             :                 
     425             :                         
     426             :                                 
     427             :                 x.antennaMake = antennaMake;
     428             :                                 
     429             :                         
     430             :                 
     431             :         
     432             : 
     433             :         
     434             :                 
     435             :                 
     436             :                 
     437             :                         
     438             :                                 
     439             :                 x.pointingModelMode = pointingModelMode;
     440             :                                 
     441             :                         
     442             :                 
     443             :         
     444             : 
     445             :         
     446             :                 
     447             :                 
     448             :                 
     449             :                         
     450             :                                 
     451             :                 x.polarizationType = polarizationType;
     452             :                                 
     453             :                         
     454             :                 
     455             :         
     456             : 
     457             :         
     458             :                 
     459             :                 
     460             :                 
     461             :                         
     462             :                                 
     463             :                 x.numCoeff = numCoeff;
     464             :                                 
     465             :                         
     466             :                 
     467             :         
     468             : 
     469             :         
     470             :                 
     471             :                 
     472             :                 
     473             :                         
     474             :                 x.coeffName.length(coeffName.size());
     475             :                 for (unsigned int i = 0; i < coeffName.size(); ++i) {
     476             :                         
     477             :                                 
     478             :                         x.coeffName[i] = CORBA::string_dup(coeffName.at(i).c_str());
     479             :                                 
     480             :                         
     481             :                 }
     482             :                         
     483             :                 
     484             :         
     485             : 
     486             :         
     487             :                 
     488             :                 
     489             :                 
     490             :                         
     491             :                 x.coeffVal.length(coeffVal.size());
     492             :                 for (unsigned int i = 0; i < coeffVal.size(); ++i) {
     493             :                         
     494             :                                 
     495             :                         x.coeffVal[i] = coeffVal.at(i);
     496             :                                 
     497             :                         
     498             :                 }
     499             :                         
     500             :                 
     501             :         
     502             : 
     503             :         
     504             :                 
     505             :                 
     506             :                 
     507             :                         
     508             :                 x.coeffError.length(coeffError.size());
     509             :                 for (unsigned int i = 0; i < coeffError.size(); ++i) {
     510             :                         
     511             :                                 
     512             :                         x.coeffError[i] = coeffError.at(i);
     513             :                                 
     514             :                         
     515             :                 }
     516             :                         
     517             :                 
     518             :         
     519             : 
     520             :         
     521             :                 
     522             :                 
     523             :                 
     524             :                         
     525             :                 x.coeffFixed.length(coeffFixed.size());
     526             :                 for (unsigned int i = 0; i < coeffFixed.size(); ++i) {
     527             :                         
     528             :                                 
     529             :                         x.coeffFixed[i] = coeffFixed.at(i);
     530             :                                 
     531             :                         
     532             :                 }
     533             :                         
     534             :                 
     535             :         
     536             : 
     537             :         
     538             :                 
     539             :                 
     540             :                 
     541             :                         
     542             :                 x.azimuthRMS = azimuthRMS.toIDLAngle();
     543             :                         
     544             :                 
     545             :         
     546             : 
     547             :         
     548             :                 
     549             :                 
     550             :                 
     551             :                         
     552             :                 x.elevationRms = elevationRms.toIDLAngle();
     553             :                         
     554             :                 
     555             :         
     556             : 
     557             :         
     558             :                 
     559             :                 
     560             :                 
     561             :                         
     562             :                 x.skyRMS = skyRMS.toIDLAngle();
     563             :                         
     564             :                 
     565             :         
     566             : 
     567             :         
     568             :                 
     569             :                 
     570             :                 
     571             :                         
     572             :                                 
     573             :                 x.reducedChiSquared = reducedChiSquared;
     574             :                                 
     575             :                         
     576             :                 
     577             :         
     578             : 
     579             :         
     580             :                 
     581             :                 
     582             :                 x.numObsExists = numObsExists;
     583             :                 
     584             :                 
     585             :                         
     586             :                                 
     587             :                 x.numObs = numObs;
     588             :                                 
     589             :                         
     590             :                 
     591             :         
     592             : 
     593             :         
     594             :                 
     595             :                 
     596             :                 x.coeffFormulaExists = coeffFormulaExists;
     597             :                 
     598             :                 
     599             :                         
     600             :                 x.coeffFormula.length(coeffFormula.size());
     601             :                 for (unsigned int i = 0; i < coeffFormula.size(); ++i) {
     602             :                         
     603             :                                 
     604             :                         x.coeffFormula[i] = CORBA::string_dup(coeffFormula.at(i).c_str());
     605             :                                 
     606             :                         
     607             :                 }
     608             :                         
     609             :                 
     610             :         
     611             : 
     612             :         
     613             :         
     614             :                 
     615             :         
     616             :         
     617             :                 
     618             :                 
     619             :                 
     620             :                         
     621             :                 x.calDataId = calDataId.toIDLTag();
     622             :                         
     623             :                                 
     624             :         
     625             : 
     626             :         
     627             :         
     628             :                 
     629             :                 
     630             :                 
     631             :                         
     632             :                 x.calReductionId = calReductionId.toIDLTag();
     633             :                         
     634             :                                 
     635             :         
     636             : 
     637             :         
     638             :                 
     639             :         
     640             : 
     641             :         
     642             : 
     643             :         
     644             :         }
     645             : #endif
     646             :         
     647             : 
     648             : #ifndef WITHOUT_ACS
     649             :         /**
     650             :          * Fill the values of this row from the IDL struct CalPointingModelRowIDL.
     651             :          * @param x The IDL struct containing the values used to fill this row.
     652             :          */
     653             :         void CalPointingModelRow::setFromIDL (CalPointingModelRowIDL x){
     654             :                 try {
     655             :                 // Fill the values from x.
     656             :         
     657             :                 
     658             :         
     659             :                 
     660             :                 
     661             :                         
     662             :                 setAntennaName(string (x.antennaName));
     663             :                         
     664             :                 
     665             :                 
     666             :         
     667             : 
     668             :         
     669             :                 
     670             :                 
     671             :                         
     672             :                 setReceiverBand(x.receiverBand);
     673             :                         
     674             :                 
     675             :                 
     676             :         
     677             : 
     678             :         
     679             :                 
     680             :                 
     681             :                         
     682             :                 setStartValidTime(ArrayTime (x.startValidTime));
     683             :                         
     684             :                 
     685             :                 
     686             :         
     687             : 
     688             :         
     689             :                 
     690             :                 
     691             :                         
     692             :                 setEndValidTime(ArrayTime (x.endValidTime));
     693             :                         
     694             :                 
     695             :                 
     696             :         
     697             : 
     698             :         
     699             :                 
     700             :                 
     701             :                         
     702             :                 setAntennaMake(x.antennaMake);
     703             :                         
     704             :                 
     705             :                 
     706             :         
     707             : 
     708             :         
     709             :                 
     710             :                 
     711             :                         
     712             :                 setPointingModelMode(x.pointingModelMode);
     713             :                         
     714             :                 
     715             :                 
     716             :         
     717             : 
     718             :         
     719             :                 
     720             :                 
     721             :                         
     722             :                 setPolarizationType(x.polarizationType);
     723             :                         
     724             :                 
     725             :                 
     726             :         
     727             : 
     728             :         
     729             :                 
     730             :                 
     731             :                         
     732             :                 setNumCoeff(x.numCoeff);
     733             :                         
     734             :                 
     735             :                 
     736             :         
     737             : 
     738             :         
     739             :                 
     740             :                 
     741             :                         
     742             :                 coeffName .clear();
     743             :                 for (unsigned int i = 0; i <x.coeffName.length(); ++i) {
     744             :                         
     745             :                         coeffName.push_back(string (x.coeffName[i]));
     746             :                         
     747             :                 }
     748             :                         
     749             :                 
     750             :                 
     751             :         
     752             : 
     753             :         
     754             :                 
     755             :                 
     756             :                         
     757             :                 coeffVal .clear();
     758             :                 for (unsigned int i = 0; i <x.coeffVal.length(); ++i) {
     759             :                         
     760             :                         coeffVal.push_back(x.coeffVal[i]);
     761             :                         
     762             :                 }
     763             :                         
     764             :                 
     765             :                 
     766             :         
     767             : 
     768             :         
     769             :                 
     770             :                 
     771             :                         
     772             :                 coeffError .clear();
     773             :                 for (unsigned int i = 0; i <x.coeffError.length(); ++i) {
     774             :                         
     775             :                         coeffError.push_back(x.coeffError[i]);
     776             :                         
     777             :                 }
     778             :                         
     779             :                 
     780             :                 
     781             :         
     782             : 
     783             :         
     784             :                 
     785             :                 
     786             :                         
     787             :                 coeffFixed .clear();
     788             :                 for (unsigned int i = 0; i <x.coeffFixed.length(); ++i) {
     789             :                         
     790             :                         coeffFixed.push_back(x.coeffFixed[i]);
     791             :                         
     792             :                 }
     793             :                         
     794             :                 
     795             :                 
     796             :         
     797             : 
     798             :         
     799             :                 
     800             :                 
     801             :                         
     802             :                 setAzimuthRMS(Angle (x.azimuthRMS));
     803             :                         
     804             :                 
     805             :                 
     806             :         
     807             : 
     808             :         
     809             :                 
     810             :                 
     811             :                         
     812             :                 setElevationRms(Angle (x.elevationRms));
     813             :                         
     814             :                 
     815             :                 
     816             :         
     817             : 
     818             :         
     819             :                 
     820             :                 
     821             :                         
     822             :                 setSkyRMS(Angle (x.skyRMS));
     823             :                         
     824             :                 
     825             :                 
     826             :         
     827             : 
     828             :         
     829             :                 
     830             :                 
     831             :                         
     832             :                 setReducedChiSquared(x.reducedChiSquared);
     833             :                         
     834             :                 
     835             :                 
     836             :         
     837             : 
     838             :         
     839             :                 
     840             :                 numObsExists = x.numObsExists;
     841             :                 if (x.numObsExists) {
     842             :                 
     843             :                 
     844             :                         
     845             :                 setNumObs(x.numObs);
     846             :                         
     847             :                 
     848             :                 
     849             :                 }
     850             :                 
     851             :         
     852             : 
     853             :         
     854             :                 
     855             :                 coeffFormulaExists = x.coeffFormulaExists;
     856             :                 if (x.coeffFormulaExists) {
     857             :                 
     858             :                 
     859             :                         
     860             :                 coeffFormula .clear();
     861             :                 for (unsigned int i = 0; i <x.coeffFormula.length(); ++i) {
     862             :                         
     863             :                         coeffFormula.push_back(string (x.coeffFormula[i]));
     864             :                         
     865             :                 }
     866             :                         
     867             :                 
     868             :                 
     869             :                 }
     870             :                 
     871             :         
     872             : 
     873             :         
     874             :         
     875             :                 
     876             :         
     877             :                 
     878             :                 
     879             :                         
     880             :                 setCalDataId(Tag (x.calDataId));
     881             :                         
     882             :                 
     883             :                 
     884             :         
     885             : 
     886             :         
     887             :                 
     888             :                 
     889             :                         
     890             :                 setCalReductionId(Tag (x.calReductionId));
     891             :                         
     892             :                 
     893             :                 
     894             :         
     895             : 
     896             :         
     897             :                 
     898             :         
     899             : 
     900             :         
     901             : 
     902             :                 } catch (const IllegalAccessException &err) {
     903             :                         throw ConversionException (err.getMessage(),"CalPointingModel");
     904             :                 }
     905             :         }
     906             : #endif
     907             :         
     908             :         /**
     909             :          * Return this row in the form of an XML string.
     910             :          * @return The values of this row as an XML string.
     911             :          */
     912           0 :         string CalPointingModelRow::toXML() const {
     913           0 :                 string buf;
     914           0 :                 buf.append("<row> \n");
     915             :                 
     916             :         
     917             :                 
     918             :         
     919             :                 
     920             :                 
     921           0 :                 Parser::toXML(antennaName, "antennaName", buf);
     922             :                 
     923             :                 
     924             :         
     925             : 
     926             :         
     927             :                 
     928             :                 
     929           0 :                         buf.append(EnumerationParser::toXML("receiverBand", receiverBand));
     930             :                 
     931             :                 
     932             :         
     933             : 
     934             :         
     935             :                 
     936             :                 
     937           0 :                 Parser::toXML(startValidTime, "startValidTime", buf);
     938             :                 
     939             :                 
     940             :         
     941             : 
     942             :         
     943             :                 
     944             :                 
     945           0 :                 Parser::toXML(endValidTime, "endValidTime", buf);
     946             :                 
     947             :                 
     948             :         
     949             : 
     950             :         
     951             :                 
     952             :                 
     953           0 :                         buf.append(EnumerationParser::toXML("antennaMake", antennaMake));
     954             :                 
     955             :                 
     956             :         
     957             : 
     958             :         
     959             :                 
     960             :                 
     961           0 :                         buf.append(EnumerationParser::toXML("pointingModelMode", pointingModelMode));
     962             :                 
     963             :                 
     964             :         
     965             : 
     966             :         
     967             :                 
     968             :                 
     969           0 :                         buf.append(EnumerationParser::toXML("polarizationType", polarizationType));
     970             :                 
     971             :                 
     972             :         
     973             : 
     974             :         
     975             :                 
     976             :                 
     977           0 :                 Parser::toXML(numCoeff, "numCoeff", buf);
     978             :                 
     979             :                 
     980             :         
     981             : 
     982             :         
     983             :                 
     984             :                 
     985           0 :                 Parser::toXML(coeffName, "coeffName", buf);
     986             :                 
     987             :                 
     988             :         
     989             : 
     990             :         
     991             :                 
     992             :                 
     993           0 :                 Parser::toXML(coeffVal, "coeffVal", buf);
     994             :                 
     995             :                 
     996             :         
     997             : 
     998             :         
     999             :                 
    1000             :                 
    1001           0 :                 Parser::toXML(coeffError, "coeffError", buf);
    1002             :                 
    1003             :                 
    1004             :         
    1005             : 
    1006             :         
    1007             :                 
    1008             :                 
    1009           0 :                 Parser::toXML(coeffFixed, "coeffFixed", buf);
    1010             :                 
    1011             :                 
    1012             :         
    1013             : 
    1014             :         
    1015             :                 
    1016             :                 
    1017           0 :                 Parser::toXML(azimuthRMS, "azimuthRMS", buf);
    1018             :                 
    1019             :                 
    1020             :         
    1021             : 
    1022             :         
    1023             :                 
    1024             :                 
    1025           0 :                 Parser::toXML(elevationRms, "elevationRms", buf);
    1026             :                 
    1027             :                 
    1028             :         
    1029             : 
    1030             :         
    1031             :                 
    1032             :                 
    1033           0 :                 Parser::toXML(skyRMS, "skyRMS", buf);
    1034             :                 
    1035             :                 
    1036             :         
    1037             : 
    1038             :         
    1039             :                 
    1040             :                 
    1041           0 :                 Parser::toXML(reducedChiSquared, "reducedChiSquared", buf);
    1042             :                 
    1043             :                 
    1044             :         
    1045             : 
    1046             :         
    1047             :                 
    1048           0 :                 if (numObsExists) {
    1049             :                 
    1050             :                 
    1051           0 :                 Parser::toXML(numObs, "numObs", buf);
    1052             :                 
    1053             :                 
    1054             :                 }
    1055             :                 
    1056             :         
    1057             : 
    1058             :         
    1059             :                 
    1060           0 :                 if (coeffFormulaExists) {
    1061             :                 
    1062             :                 
    1063           0 :                 Parser::toXML(coeffFormula, "coeffFormula", buf);
    1064             :                 
    1065             :                 
    1066             :                 }
    1067             :                 
    1068             :         
    1069             : 
    1070             :         
    1071             :         
    1072             :                 
    1073             :         
    1074             :                 
    1075             :                 
    1076           0 :                 Parser::toXML(calDataId, "calDataId", buf);
    1077             :                 
    1078             :                 
    1079             :         
    1080             : 
    1081             :         
    1082             :                 
    1083             :                 
    1084           0 :                 Parser::toXML(calReductionId, "calReductionId", buf);
    1085             :                 
    1086             :                 
    1087             :         
    1088             : 
    1089             :         
    1090             :                 
    1091             :         
    1092             : 
    1093             :         
    1094             : 
    1095             :                 
    1096           0 :                 buf.append("</row>\n");
    1097           0 :                 return buf;
    1098           0 :         }
    1099             : 
    1100             :         /**
    1101             :          * Fill the values of this row from an XML string 
    1102             :          * that was produced by the toXML() method.
    1103             :          * @param x The XML string being used to set the values of this row.
    1104             :          */
    1105           0 :         void CalPointingModelRow::setFromXML (string rowDoc) {
    1106           0 :                 Parser row(rowDoc);
    1107           0 :                 string s = "";
    1108             :                 try {
    1109             :         
    1110             :                 
    1111             :         
    1112             :                 
    1113             :                         
    1114           0 :                 setAntennaName(Parser::getString("antennaName","CalPointingModel",rowDoc));
    1115             :                         
    1116             :                 
    1117             :         
    1118             : 
    1119             :         
    1120             :                 
    1121             :                 
    1122             :                 
    1123           0 :                 receiverBand = EnumerationParser::getReceiverBand("receiverBand","CalPointingModel",rowDoc);
    1124             :                 
    1125             :                 
    1126             :                 
    1127             :         
    1128             : 
    1129             :         
    1130             :                 
    1131             :                         
    1132           0 :                 setStartValidTime(Parser::getArrayTime("startValidTime","CalPointingModel",rowDoc));
    1133             :                         
    1134             :                 
    1135             :         
    1136             : 
    1137             :         
    1138             :                 
    1139             :                         
    1140           0 :                 setEndValidTime(Parser::getArrayTime("endValidTime","CalPointingModel",rowDoc));
    1141             :                         
    1142             :                 
    1143             :         
    1144             : 
    1145             :         
    1146             :                 
    1147             :                 
    1148             :                 
    1149           0 :                 antennaMake = EnumerationParser::getAntennaMake("antennaMake","CalPointingModel",rowDoc);
    1150             :                 
    1151             :                 
    1152             :                 
    1153             :         
    1154             : 
    1155             :         
    1156             :                 
    1157             :                 
    1158             :                 
    1159           0 :                 pointingModelMode = EnumerationParser::getPointingModelMode("pointingModelMode","CalPointingModel",rowDoc);
    1160             :                 
    1161             :                 
    1162             :                 
    1163             :         
    1164             : 
    1165             :         
    1166             :                 
    1167             :                 
    1168             :                 
    1169           0 :                 polarizationType = EnumerationParser::getPolarizationType("polarizationType","CalPointingModel",rowDoc);
    1170             :                 
    1171             :                 
    1172             :                 
    1173             :         
    1174             : 
    1175             :         
    1176             :                 
    1177             :                         
    1178           0 :                 setNumCoeff(Parser::getInteger("numCoeff","CalPointingModel",rowDoc));
    1179             :                         
    1180             :                 
    1181             :         
    1182             : 
    1183             :         
    1184             :                 
    1185             :                         
    1186             :                                         
    1187           0 :                 setCoeffName(Parser::get1DString("coeffName","CalPointingModel",rowDoc));
    1188             :                                 
    1189             :                         
    1190             :                 
    1191             :         
    1192             : 
    1193             :         
    1194             :                 
    1195             :                         
    1196             :                                         
    1197           0 :                 setCoeffVal(Parser::get1DFloat("coeffVal","CalPointingModel",rowDoc));
    1198             :                                 
    1199             :                         
    1200             :                 
    1201             :         
    1202             : 
    1203             :         
    1204             :                 
    1205             :                         
    1206             :                                         
    1207           0 :                 setCoeffError(Parser::get1DFloat("coeffError","CalPointingModel",rowDoc));
    1208             :                                 
    1209             :                         
    1210             :                 
    1211             :         
    1212             : 
    1213             :         
    1214             :                 
    1215             :                         
    1216             :                                         
    1217           0 :                 setCoeffFixed(Parser::get1DBoolean("coeffFixed","CalPointingModel",rowDoc));
    1218             :                                 
    1219             :                         
    1220             :                 
    1221             :         
    1222             : 
    1223             :         
    1224             :                 
    1225             :                         
    1226           0 :                 setAzimuthRMS(Parser::getAngle("azimuthRMS","CalPointingModel",rowDoc));
    1227             :                         
    1228             :                 
    1229             :         
    1230             : 
    1231             :         
    1232             :                 
    1233             :                         
    1234           0 :                 setElevationRms(Parser::getAngle("elevationRms","CalPointingModel",rowDoc));
    1235             :                         
    1236             :                 
    1237             :         
    1238             : 
    1239             :         
    1240             :                 
    1241             :                         
    1242           0 :                 setSkyRMS(Parser::getAngle("skyRMS","CalPointingModel",rowDoc));
    1243             :                         
    1244             :                 
    1245             :         
    1246             : 
    1247             :         
    1248             :                 
    1249             :                         
    1250           0 :                 setReducedChiSquared(Parser::getDouble("reducedChiSquared","CalPointingModel",rowDoc));
    1251             :                         
    1252             :                 
    1253             :         
    1254             : 
    1255             :         
    1256             :                 
    1257           0 :         if (row.isStr("<numObs>")) {
    1258             :                         
    1259           0 :                         setNumObs(Parser::getInteger("numObs","CalPointingModel",rowDoc));
    1260             :                         
    1261             :                 }
    1262             :                 
    1263             :         
    1264             : 
    1265             :         
    1266             :                 
    1267           0 :         if (row.isStr("<coeffFormula>")) {
    1268             :                         
    1269             :                                                                 
    1270           0 :                         setCoeffFormula(Parser::get1DString("coeffFormula","CalPointingModel",rowDoc));
    1271             :                                 
    1272             :                         
    1273             :                 }
    1274             :                 
    1275             :         
    1276             : 
    1277             :         
    1278             :         
    1279             :                 
    1280             :         
    1281             :                 
    1282             :                         
    1283           0 :                 setCalDataId(Parser::getTag("calDataId","CalData",rowDoc));
    1284             :                         
    1285             :                 
    1286             :         
    1287             : 
    1288             :         
    1289             :                 
    1290             :                         
    1291           0 :                 setCalReductionId(Parser::getTag("calReductionId","CalReduction",rowDoc));
    1292             :                         
    1293             :                 
    1294             :         
    1295             : 
    1296             :         
    1297             :                 
    1298             :         
    1299             : 
    1300             :         
    1301             : 
    1302           0 :                 } catch (const IllegalAccessException &err) {
    1303           0 :                         throw ConversionException (err.getMessage(),"CalPointingModel");
    1304           0 :                 }
    1305           0 :         }
    1306             :         
    1307           0 :         void CalPointingModelRow::toBin(EndianOSStream& eoss) {
    1308             :         
    1309             :         
    1310             :         
    1311             :         
    1312             :                 
    1313             :                                                 
    1314           0 :                         eoss.writeString(antennaName);
    1315             :                                 
    1316             :                 
    1317             :         
    1318             : 
    1319             :         
    1320             :         
    1321             :                 
    1322             :                                         
    1323           0 :                 eoss.writeString(CReceiverBand::name(receiverBand));
    1324             :                         /* eoss.writeInt(receiverBand); */
    1325             :                                 
    1326             :                 
    1327             :         
    1328             : 
    1329             :         
    1330             :         
    1331             :                 
    1332           0 :         calDataId.toBin(eoss);
    1333             :                 
    1334             :         
    1335             : 
    1336             :         
    1337             :         
    1338             :                 
    1339           0 :         calReductionId.toBin(eoss);
    1340             :                 
    1341             :         
    1342             : 
    1343             :         
    1344             :         
    1345             :                 
    1346           0 :         startValidTime.toBin(eoss);
    1347             :                 
    1348             :         
    1349             : 
    1350             :         
    1351             :         
    1352             :                 
    1353           0 :         endValidTime.toBin(eoss);
    1354             :                 
    1355             :         
    1356             : 
    1357             :         
    1358             :         
    1359             :                 
    1360             :                                         
    1361           0 :                 eoss.writeString(CAntennaMake::name(antennaMake));
    1362             :                         /* eoss.writeInt(antennaMake); */
    1363             :                                 
    1364             :                 
    1365             :         
    1366             : 
    1367             :         
    1368             :         
    1369             :                 
    1370             :                                         
    1371           0 :                 eoss.writeString(CPointingModelMode::name(pointingModelMode));
    1372             :                         /* eoss.writeInt(pointingModelMode); */
    1373             :                                 
    1374             :                 
    1375             :         
    1376             : 
    1377             :         
    1378             :         
    1379             :                 
    1380             :                                         
    1381           0 :                 eoss.writeString(CPolarizationType::name(polarizationType));
    1382             :                         /* eoss.writeInt(polarizationType); */
    1383             :                                 
    1384             :                 
    1385             :         
    1386             : 
    1387             :         
    1388             :         
    1389             :                 
    1390             :                                                 
    1391           0 :                         eoss.writeInt(numCoeff);
    1392             :                                 
    1393             :                 
    1394             :         
    1395             : 
    1396             :         
    1397             :         
    1398             :                 
    1399             :                 
    1400             :                         
    1401           0 :                 eoss.writeInt((int) coeffName.size());
    1402           0 :                 for (unsigned int i = 0; i < coeffName.size(); i++)
    1403             :                                 
    1404           0 :                         eoss.writeString(coeffName.at(i));
    1405             :                                 
    1406             :                                 
    1407             :                                                 
    1408             :                 
    1409             :         
    1410             : 
    1411             :         
    1412             :         
    1413             :                 
    1414             :                 
    1415             :                         
    1416           0 :                 eoss.writeInt((int) coeffVal.size());
    1417           0 :                 for (unsigned int i = 0; i < coeffVal.size(); i++)
    1418             :                                 
    1419           0 :                         eoss.writeFloat(coeffVal.at(i));
    1420             :                                 
    1421             :                                 
    1422             :                                                 
    1423             :                 
    1424             :         
    1425             : 
    1426             :         
    1427             :         
    1428             :                 
    1429             :                 
    1430             :                         
    1431           0 :                 eoss.writeInt((int) coeffError.size());
    1432           0 :                 for (unsigned int i = 0; i < coeffError.size(); i++)
    1433             :                                 
    1434           0 :                         eoss.writeFloat(coeffError.at(i));
    1435             :                                 
    1436             :                                 
    1437             :                                                 
    1438             :                 
    1439             :         
    1440             : 
    1441             :         
    1442             :         
    1443             :                 
    1444             :                 
    1445             :                         
    1446           0 :                 eoss.writeInt((int) coeffFixed.size());
    1447           0 :                 for (unsigned int i = 0; i < coeffFixed.size(); i++)
    1448             :                                 
    1449           0 :                         eoss.writeBoolean(coeffFixed.at(i));
    1450             :                                 
    1451             :                                 
    1452             :                                                 
    1453             :                 
    1454             :         
    1455             : 
    1456             :         
    1457             :         
    1458             :                 
    1459           0 :         azimuthRMS.toBin(eoss);
    1460             :                 
    1461             :         
    1462             : 
    1463             :         
    1464             :         
    1465             :                 
    1466           0 :         elevationRms.toBin(eoss);
    1467             :                 
    1468             :         
    1469             : 
    1470             :         
    1471             :         
    1472             :                 
    1473           0 :         skyRMS.toBin(eoss);
    1474             :                 
    1475             :         
    1476             : 
    1477             :         
    1478             :         
    1479             :                 
    1480             :                                                 
    1481           0 :                         eoss.writeDouble(reducedChiSquared);
    1482             :                                 
    1483             :                 
    1484             :         
    1485             : 
    1486             : 
    1487             :         
    1488             :         
    1489           0 :         eoss.writeBoolean(numObsExists);
    1490           0 :         if (numObsExists) {
    1491             :         
    1492             :         
    1493             :         
    1494             :                 
    1495             :                                                 
    1496           0 :                         eoss.writeInt(numObs);
    1497             :                                 
    1498             :                 
    1499             :         
    1500             : 
    1501             :         }
    1502             : 
    1503           0 :         eoss.writeBoolean(coeffFormulaExists);
    1504           0 :         if (coeffFormulaExists) {
    1505             :         
    1506             :         
    1507             :         
    1508             :                 
    1509             :                 
    1510             :                         
    1511           0 :                 eoss.writeInt((int) coeffFormula.size());
    1512           0 :                 for (unsigned int i = 0; i < coeffFormula.size(); i++)
    1513             :                                 
    1514           0 :                         eoss.writeString(coeffFormula.at(i));
    1515             :                                 
    1516             :                                 
    1517             :                                                 
    1518             :                 
    1519             :         
    1520             : 
    1521             :         }
    1522             : 
    1523           0 :         }
    1524             :         
    1525           0 : void CalPointingModelRow::antennaNameFromBin(EndianIStream& eis) {
    1526             :                 
    1527             :         
    1528             :         
    1529             :                 
    1530             :                         
    1531           0 :                 antennaName =  eis.readString();
    1532             :                         
    1533             :                 
    1534             :         
    1535             :         
    1536           0 : }
    1537           0 : void CalPointingModelRow::receiverBandFromBin(EndianIStream& eis) {
    1538             :                 
    1539             :         
    1540             :         
    1541             :                 
    1542             :                         
    1543           0 :                 receiverBand = CReceiverBand::literal(eis.readString());
    1544             :                         
    1545             :                 
    1546             :         
    1547             :         
    1548           0 : }
    1549           0 : void CalPointingModelRow::calDataIdFromBin(EndianIStream& eis) {
    1550             :                 
    1551             :         
    1552             :                 
    1553             :                 
    1554           0 :                 calDataId =  Tag::fromBin(eis);
    1555             :                 
    1556             :         
    1557             :         
    1558           0 : }
    1559           0 : void CalPointingModelRow::calReductionIdFromBin(EndianIStream& eis) {
    1560             :                 
    1561             :         
    1562             :                 
    1563             :                 
    1564           0 :                 calReductionId =  Tag::fromBin(eis);
    1565             :                 
    1566             :         
    1567             :         
    1568           0 : }
    1569           0 : void CalPointingModelRow::startValidTimeFromBin(EndianIStream& eis) {
    1570             :                 
    1571             :         
    1572             :                 
    1573             :                 
    1574           0 :                 startValidTime =  ArrayTime::fromBin(eis);
    1575             :                 
    1576             :         
    1577             :         
    1578           0 : }
    1579           0 : void CalPointingModelRow::endValidTimeFromBin(EndianIStream& eis) {
    1580             :                 
    1581             :         
    1582             :                 
    1583             :                 
    1584           0 :                 endValidTime =  ArrayTime::fromBin(eis);
    1585             :                 
    1586             :         
    1587             :         
    1588           0 : }
    1589           0 : void CalPointingModelRow::antennaMakeFromBin(EndianIStream& eis) {
    1590             :                 
    1591             :         
    1592             :         
    1593             :                 
    1594             :                         
    1595           0 :                 antennaMake = CAntennaMake::literal(eis.readString());
    1596             :                         
    1597             :                 
    1598             :         
    1599             :         
    1600           0 : }
    1601           0 : void CalPointingModelRow::pointingModelModeFromBin(EndianIStream& eis) {
    1602             :                 
    1603             :         
    1604             :         
    1605             :                 
    1606             :                         
    1607           0 :                 pointingModelMode = CPointingModelMode::literal(eis.readString());
    1608             :                         
    1609             :                 
    1610             :         
    1611             :         
    1612           0 : }
    1613           0 : void CalPointingModelRow::polarizationTypeFromBin(EndianIStream& eis) {
    1614             :                 
    1615             :         
    1616             :         
    1617             :                 
    1618             :                         
    1619           0 :                 polarizationType = CPolarizationType::literal(eis.readString());
    1620             :                         
    1621             :                 
    1622             :         
    1623             :         
    1624           0 : }
    1625           0 : void CalPointingModelRow::numCoeffFromBin(EndianIStream& eis) {
    1626             :                 
    1627             :         
    1628             :         
    1629             :                 
    1630             :                         
    1631           0 :                 numCoeff =  eis.readInt();
    1632             :                         
    1633             :                 
    1634             :         
    1635             :         
    1636           0 : }
    1637           0 : void CalPointingModelRow::coeffNameFromBin(EndianIStream& eis) {
    1638             :                 
    1639             :         
    1640             :         
    1641             :                 
    1642             :                         
    1643             :         
    1644           0 :                 coeffName.clear();
    1645             :                 
    1646           0 :                 unsigned int coeffNameDim1 = eis.readInt();
    1647           0 :                 for (unsigned int  i = 0 ; i < coeffNameDim1; i++)
    1648             :                         
    1649           0 :                         coeffName.push_back(eis.readString());
    1650             :                         
    1651             :         
    1652             : 
    1653             :                 
    1654             :         
    1655             :         
    1656           0 : }
    1657           0 : void CalPointingModelRow::coeffValFromBin(EndianIStream& eis) {
    1658             :                 
    1659             :         
    1660             :         
    1661             :                 
    1662             :                         
    1663             :         
    1664           0 :                 coeffVal.clear();
    1665             :                 
    1666           0 :                 unsigned int coeffValDim1 = eis.readInt();
    1667           0 :                 for (unsigned int  i = 0 ; i < coeffValDim1; i++)
    1668             :                         
    1669           0 :                         coeffVal.push_back(eis.readFloat());
    1670             :                         
    1671             :         
    1672             : 
    1673             :                 
    1674             :         
    1675             :         
    1676           0 : }
    1677           0 : void CalPointingModelRow::coeffErrorFromBin(EndianIStream& eis) {
    1678             :                 
    1679             :         
    1680             :         
    1681             :                 
    1682             :                         
    1683             :         
    1684           0 :                 coeffError.clear();
    1685             :                 
    1686           0 :                 unsigned int coeffErrorDim1 = eis.readInt();
    1687           0 :                 for (unsigned int  i = 0 ; i < coeffErrorDim1; i++)
    1688             :                         
    1689           0 :                         coeffError.push_back(eis.readFloat());
    1690             :                         
    1691             :         
    1692             : 
    1693             :                 
    1694             :         
    1695             :         
    1696           0 : }
    1697           0 : void CalPointingModelRow::coeffFixedFromBin(EndianIStream& eis) {
    1698             :                 
    1699             :         
    1700             :         
    1701             :                 
    1702             :                         
    1703             :         
    1704           0 :                 coeffFixed.clear();
    1705             :                 
    1706           0 :                 unsigned int coeffFixedDim1 = eis.readInt();
    1707           0 :                 for (unsigned int  i = 0 ; i < coeffFixedDim1; i++)
    1708             :                         
    1709           0 :                         coeffFixed.push_back(eis.readBoolean());
    1710             :                         
    1711             :         
    1712             : 
    1713             :                 
    1714             :         
    1715             :         
    1716           0 : }
    1717           0 : void CalPointingModelRow::azimuthRMSFromBin(EndianIStream& eis) {
    1718             :                 
    1719             :         
    1720             :                 
    1721             :                 
    1722           0 :                 azimuthRMS =  Angle::fromBin(eis);
    1723             :                 
    1724             :         
    1725             :         
    1726           0 : }
    1727           0 : void CalPointingModelRow::elevationRmsFromBin(EndianIStream& eis) {
    1728             :                 
    1729             :         
    1730             :                 
    1731             :                 
    1732           0 :                 elevationRms =  Angle::fromBin(eis);
    1733             :                 
    1734             :         
    1735             :         
    1736           0 : }
    1737           0 : void CalPointingModelRow::skyRMSFromBin(EndianIStream& eis) {
    1738             :                 
    1739             :         
    1740             :                 
    1741             :                 
    1742           0 :                 skyRMS =  Angle::fromBin(eis);
    1743             :                 
    1744             :         
    1745             :         
    1746           0 : }
    1747           0 : void CalPointingModelRow::reducedChiSquaredFromBin(EndianIStream& eis) {
    1748             :                 
    1749             :         
    1750             :         
    1751             :                 
    1752             :                         
    1753           0 :                 reducedChiSquared =  eis.readDouble();
    1754             :                         
    1755             :                 
    1756             :         
    1757             :         
    1758           0 : }
    1759             : 
    1760           0 : void CalPointingModelRow::numObsFromBin(EndianIStream& eis) {
    1761             :                 
    1762           0 :         numObsExists = eis.readBoolean();
    1763           0 :         if (numObsExists) {
    1764             :                 
    1765             :         
    1766             :         
    1767             :                 
    1768             :                         
    1769           0 :                 numObs =  eis.readInt();
    1770             :                         
    1771             :                 
    1772             :         
    1773             : 
    1774             :         }
    1775             :         
    1776           0 : }
    1777           0 : void CalPointingModelRow::coeffFormulaFromBin(EndianIStream& eis) {
    1778             :                 
    1779           0 :         coeffFormulaExists = eis.readBoolean();
    1780           0 :         if (coeffFormulaExists) {
    1781             :                 
    1782             :         
    1783             :         
    1784             :                 
    1785             :                         
    1786             :         
    1787           0 :                 coeffFormula.clear();
    1788             :                 
    1789           0 :                 unsigned int coeffFormulaDim1 = eis.readInt();
    1790           0 :                 for (unsigned int  i = 0 ; i < coeffFormulaDim1; i++)
    1791             :                         
    1792           0 :                         coeffFormula.push_back(eis.readString());
    1793             :                         
    1794             :         
    1795             : 
    1796             :                 
    1797             :         
    1798             : 
    1799             :         }
    1800             :         
    1801           0 : }
    1802             :         
    1803             :         
    1804           0 :         CalPointingModelRow* CalPointingModelRow::fromBin(EndianIStream& eis, CalPointingModelTable& table, const vector<string>& attributesSeq) {
    1805           0 :                 CalPointingModelRow* row = new  CalPointingModelRow(table);
    1806             :                 
    1807           0 :                 map<string, CalPointingModelAttributeFromBin>::iterator iter ;
    1808           0 :                 for (unsigned int i = 0; i < attributesSeq.size(); i++) {
    1809           0 :                         iter = row->fromBinMethods.find(attributesSeq.at(i));
    1810           0 :                         if (iter != row->fromBinMethods.end()) {
    1811           0 :                                 (row->*(row->fromBinMethods[ attributesSeq.at(i) ] ))(eis);                       
    1812             :                         }
    1813             :                         else {
    1814           0 :                                 BinaryAttributeReaderFunctor* functorP = table.getUnknownAttributeBinaryReader(attributesSeq.at(i));
    1815           0 :                                 if (functorP)
    1816           0 :                                         (*functorP)(eis);
    1817             :                                 else
    1818           0 :                                         throw ConversionException("There is not method to read an attribute '"+attributesSeq.at(i)+"'.", "CalPointingModelTable");
    1819             :                         }
    1820             :                                 
    1821             :                 }                               
    1822           0 :                 return row;
    1823             :         }
    1824             : 
    1825             :         //
    1826             :         // A collection of methods to set the value of the attributes from their textual value in the XML representation
    1827             :         // of one row.
    1828             :         //
    1829             :         
    1830             :         // Convert a string into an String 
    1831           0 :         void CalPointingModelRow::antennaNameFromText(const string & s) {
    1832             :                  
    1833             :           
    1834           0 :                 antennaName = ASDMValuesParser::parse<string>(s);
    1835             :           
    1836             :                 
    1837           0 :         }
    1838             :         
    1839             :         
    1840             :         // Convert a string into an ReceiverBand 
    1841           0 :         void CalPointingModelRow::receiverBandFromText(const string & s) {
    1842             :                  
    1843             :           
    1844           0 :                 receiverBand = ASDMValuesParser::parse<ReceiverBandMod::ReceiverBand>(s);
    1845             :           
    1846             :                 
    1847           0 :         }
    1848             :         
    1849             :         
    1850             :         // Convert a string into an Tag 
    1851           0 :         void CalPointingModelRow::calDataIdFromText(const string & s) {
    1852             :                  
    1853             :           
    1854           0 :                 calDataId = ASDMValuesParser::parse<Tag>(s);
    1855             :           
    1856             :                 
    1857           0 :         }
    1858             :         
    1859             :         
    1860             :         // Convert a string into an Tag 
    1861           0 :         void CalPointingModelRow::calReductionIdFromText(const string & s) {
    1862             :                  
    1863             :           
    1864           0 :                 calReductionId = ASDMValuesParser::parse<Tag>(s);
    1865             :           
    1866             :                 
    1867           0 :         }
    1868             :         
    1869             :         
    1870             :         // Convert a string into an ArrayTime 
    1871           0 :         void CalPointingModelRow::startValidTimeFromText(const string & s) {
    1872             :                  
    1873             :           
    1874           0 :                 startValidTime = ASDMValuesParser::parse<ArrayTime>(s);
    1875             :           
    1876             :                 
    1877           0 :         }
    1878             :         
    1879             :         
    1880             :         // Convert a string into an ArrayTime 
    1881           0 :         void CalPointingModelRow::endValidTimeFromText(const string & s) {
    1882             :                  
    1883             :           
    1884           0 :                 endValidTime = ASDMValuesParser::parse<ArrayTime>(s);
    1885             :           
    1886             :                 
    1887           0 :         }
    1888             :         
    1889             :         
    1890             :         // Convert a string into an AntennaMake 
    1891           0 :         void CalPointingModelRow::antennaMakeFromText(const string & s) {
    1892             :                  
    1893             :           
    1894           0 :                 antennaMake = ASDMValuesParser::parse<AntennaMakeMod::AntennaMake>(s);
    1895             :           
    1896             :                 
    1897           0 :         }
    1898             :         
    1899             :         
    1900             :         // Convert a string into an PointingModelMode 
    1901           0 :         void CalPointingModelRow::pointingModelModeFromText(const string & s) {
    1902             :                  
    1903             :           
    1904           0 :                 pointingModelMode = ASDMValuesParser::parse<PointingModelModeMod::PointingModelMode>(s);
    1905             :           
    1906             :                 
    1907           0 :         }
    1908             :         
    1909             :         
    1910             :         // Convert a string into an PolarizationType 
    1911           0 :         void CalPointingModelRow::polarizationTypeFromText(const string & s) {
    1912             :                  
    1913             :           
    1914           0 :                 polarizationType = ASDMValuesParser::parse<PolarizationTypeMod::PolarizationType>(s);
    1915             :           
    1916             :                 
    1917           0 :         }
    1918             :         
    1919             :         
    1920             :         // Convert a string into an int 
    1921           0 :         void CalPointingModelRow::numCoeffFromText(const string & s) {
    1922             :                  
    1923             :           
    1924           0 :                 numCoeff = ASDMValuesParser::parse<int>(s);
    1925             :           
    1926             :                 
    1927           0 :         }
    1928             :         
    1929             :         
    1930             :         // Convert a string into an String 
    1931           0 :         void CalPointingModelRow::coeffNameFromText(const string & s) {
    1932             :                  
    1933             :           
    1934           0 :                 coeffName = ASDMValuesParser::parse1D<string>(s);
    1935             :           
    1936             :                 
    1937           0 :         }
    1938             :         
    1939             :         
    1940             :         // Convert a string into an float 
    1941           0 :         void CalPointingModelRow::coeffValFromText(const string & s) {
    1942             :                  
    1943             :           
    1944           0 :                 coeffVal = ASDMValuesParser::parse1D<float>(s);
    1945             :           
    1946             :                 
    1947           0 :         }
    1948             :         
    1949             :         
    1950             :         // Convert a string into an float 
    1951           0 :         void CalPointingModelRow::coeffErrorFromText(const string & s) {
    1952             :                  
    1953             :           
    1954           0 :                 coeffError = ASDMValuesParser::parse1D<float>(s);
    1955             :           
    1956             :                 
    1957           0 :         }
    1958             :         
    1959             :         
    1960             :         // Convert a string into an boolean 
    1961           0 :         void CalPointingModelRow::coeffFixedFromText(const string & s) {
    1962             :                  
    1963             :           
    1964           0 :                 coeffFixed = ASDMValuesParser::parse1D<bool>(s);
    1965             :           
    1966             :                 
    1967           0 :         }
    1968             :         
    1969             :         
    1970             :         // Convert a string into an Angle 
    1971           0 :         void CalPointingModelRow::azimuthRMSFromText(const string & s) {
    1972             :                  
    1973             :           
    1974           0 :                 azimuthRMS = ASDMValuesParser::parse<Angle>(s);
    1975             :           
    1976             :                 
    1977           0 :         }
    1978             :         
    1979             :         
    1980             :         // Convert a string into an Angle 
    1981           0 :         void CalPointingModelRow::elevationRmsFromText(const string & s) {
    1982             :                  
    1983             :           
    1984           0 :                 elevationRms = ASDMValuesParser::parse<Angle>(s);
    1985             :           
    1986             :                 
    1987           0 :         }
    1988             :         
    1989             :         
    1990             :         // Convert a string into an Angle 
    1991           0 :         void CalPointingModelRow::skyRMSFromText(const string & s) {
    1992             :                  
    1993             :           
    1994           0 :                 skyRMS = ASDMValuesParser::parse<Angle>(s);
    1995             :           
    1996             :                 
    1997           0 :         }
    1998             :         
    1999             :         
    2000             :         // Convert a string into an double 
    2001           0 :         void CalPointingModelRow::reducedChiSquaredFromText(const string & s) {
    2002             :                  
    2003             :           
    2004           0 :                 reducedChiSquared = ASDMValuesParser::parse<double>(s);
    2005             :           
    2006             :                 
    2007           0 :         }
    2008             :         
    2009             : 
    2010             :         
    2011             :         // Convert a string into an int 
    2012           0 :         void CalPointingModelRow::numObsFromText(const string & s) {
    2013           0 :                 numObsExists = true;
    2014             :                  
    2015             :           
    2016           0 :                 numObs = ASDMValuesParser::parse<int>(s);
    2017             :           
    2018             :                 
    2019           0 :         }
    2020             :         
    2021             :         
    2022             :         // Convert a string into an String 
    2023           0 :         void CalPointingModelRow::coeffFormulaFromText(const string & s) {
    2024           0 :                 coeffFormulaExists = true;
    2025             :                  
    2026             :           
    2027           0 :                 coeffFormula = ASDMValuesParser::parse1D<string>(s);
    2028             :           
    2029             :                 
    2030           0 :         }
    2031             :         
    2032             :         
    2033             :         
    2034           0 :         void CalPointingModelRow::fromText(const std::string& attributeName, const std::string&  t) {
    2035           0 :                 map<string, CalPointingModelAttributeFromText>::iterator iter;
    2036           0 :                 if ((iter = fromTextMethods.find(attributeName)) == fromTextMethods.end())
    2037           0 :                         throw ConversionException("I do not know what to do with '"+attributeName+"' and its content '"+t+"' (while parsing an XML document)", "CalPointingModelTable");
    2038           0 :                 (this->*(iter->second))(t);
    2039           0 :         }
    2040             :                         
    2041             :         ////////////////////////////////////////////////
    2042             :         // Intrinsic Table Attributes getters/setters //
    2043             :         ////////////////////////////////////////////////
    2044             :         
    2045             :         
    2046             : 
    2047             :         
    2048             :         /**
    2049             :          * Get antennaName.
    2050             :          * @return antennaName as std::string
    2051             :          */
    2052           0 :         std::string CalPointingModelRow::getAntennaName() const {
    2053             :         
    2054           0 :                 return antennaName;
    2055             :         }
    2056             : 
    2057             :         /**
    2058             :          * Set antennaName with the specified std::string.
    2059             :          * @param antennaName The std::string value to which antennaName is to be set.
    2060             :          
    2061             :         
    2062             :                 
    2063             :          * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
    2064             :                 
    2065             :          */
    2066           0 :         void CalPointingModelRow::setAntennaName (std::string antennaName)  {
    2067             :         
    2068             :         
    2069           0 :                 if (hasBeenAdded) {
    2070             :                 
    2071           0 :                         throw IllegalAccessException("antennaName", "CalPointingModel");
    2072             :                 
    2073             :                 }
    2074             :         
    2075           0 :                 this->antennaName = antennaName;
    2076             :         
    2077           0 :         }
    2078             :         
    2079             :         
    2080             : 
    2081             :         
    2082             : 
    2083             :         
    2084             :         /**
    2085             :          * Get receiverBand.
    2086             :          * @return receiverBand as ReceiverBandMod::ReceiverBand
    2087             :          */
    2088           0 :         ReceiverBandMod::ReceiverBand CalPointingModelRow::getReceiverBand() const {
    2089             :         
    2090           0 :                 return receiverBand;
    2091             :         }
    2092             : 
    2093             :         /**
    2094             :          * Set receiverBand with the specified ReceiverBandMod::ReceiverBand.
    2095             :          * @param receiverBand The ReceiverBandMod::ReceiverBand value to which receiverBand is to be set.
    2096             :          
    2097             :         
    2098             :                 
    2099             :          * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
    2100             :                 
    2101             :          */
    2102           0 :         void CalPointingModelRow::setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand)  {
    2103             :         
    2104             :         
    2105           0 :                 if (hasBeenAdded) {
    2106             :                 
    2107           0 :                         throw IllegalAccessException("receiverBand", "CalPointingModel");
    2108             :                 
    2109             :                 }
    2110             :         
    2111           0 :                 this->receiverBand = receiverBand;
    2112             :         
    2113           0 :         }
    2114             :         
    2115             :         
    2116             : 
    2117             :         
    2118             : 
    2119             :         
    2120             :         /**
    2121             :          * Get startValidTime.
    2122             :          * @return startValidTime as ArrayTime
    2123             :          */
    2124           0 :         ArrayTime CalPointingModelRow::getStartValidTime() const {
    2125             :         
    2126           0 :                 return startValidTime;
    2127             :         }
    2128             : 
    2129             :         /**
    2130             :          * Set startValidTime with the specified ArrayTime.
    2131             :          * @param startValidTime The ArrayTime value to which startValidTime is to be set.
    2132             :          
    2133             :         
    2134             :                 
    2135             :          */
    2136           0 :         void CalPointingModelRow::setStartValidTime (ArrayTime startValidTime)  {
    2137             :         
    2138             :         
    2139           0 :                 if (hasBeenAdded) {
    2140             :                 
    2141             :                 }
    2142             :         
    2143           0 :                 this->startValidTime = startValidTime;
    2144             :         
    2145           0 :         }
    2146             :         
    2147             :         
    2148             : 
    2149             :         
    2150             : 
    2151             :         
    2152             :         /**
    2153             :          * Get endValidTime.
    2154             :          * @return endValidTime as ArrayTime
    2155             :          */
    2156           0 :         ArrayTime CalPointingModelRow::getEndValidTime() const {
    2157             :         
    2158           0 :                 return endValidTime;
    2159             :         }
    2160             : 
    2161             :         /**
    2162             :          * Set endValidTime with the specified ArrayTime.
    2163             :          * @param endValidTime The ArrayTime value to which endValidTime is to be set.
    2164             :          
    2165             :         
    2166             :                 
    2167             :          */
    2168           0 :         void CalPointingModelRow::setEndValidTime (ArrayTime endValidTime)  {
    2169             :         
    2170             :         
    2171           0 :                 if (hasBeenAdded) {
    2172             :                 
    2173             :                 }
    2174             :         
    2175           0 :                 this->endValidTime = endValidTime;
    2176             :         
    2177           0 :         }
    2178             :         
    2179             :         
    2180             : 
    2181             :         
    2182             : 
    2183             :         
    2184             :         /**
    2185             :          * Get antennaMake.
    2186             :          * @return antennaMake as AntennaMakeMod::AntennaMake
    2187             :          */
    2188           0 :         AntennaMakeMod::AntennaMake CalPointingModelRow::getAntennaMake() const {
    2189             :         
    2190           0 :                 return antennaMake;
    2191             :         }
    2192             : 
    2193             :         /**
    2194             :          * Set antennaMake with the specified AntennaMakeMod::AntennaMake.
    2195             :          * @param antennaMake The AntennaMakeMod::AntennaMake value to which antennaMake is to be set.
    2196             :          
    2197             :         
    2198             :                 
    2199             :          */
    2200           0 :         void CalPointingModelRow::setAntennaMake (AntennaMakeMod::AntennaMake antennaMake)  {
    2201             :         
    2202             :         
    2203           0 :                 if (hasBeenAdded) {
    2204             :                 
    2205             :                 }
    2206             :         
    2207           0 :                 this->antennaMake = antennaMake;
    2208             :         
    2209           0 :         }
    2210             :         
    2211             :         
    2212             : 
    2213             :         
    2214             : 
    2215             :         
    2216             :         /**
    2217             :          * Get pointingModelMode.
    2218             :          * @return pointingModelMode as PointingModelModeMod::PointingModelMode
    2219             :          */
    2220           0 :         PointingModelModeMod::PointingModelMode CalPointingModelRow::getPointingModelMode() const {
    2221             :         
    2222           0 :                 return pointingModelMode;
    2223             :         }
    2224             : 
    2225             :         /**
    2226             :          * Set pointingModelMode with the specified PointingModelModeMod::PointingModelMode.
    2227             :          * @param pointingModelMode The PointingModelModeMod::PointingModelMode value to which pointingModelMode is to be set.
    2228             :          
    2229             :         
    2230             :                 
    2231             :          */
    2232           0 :         void CalPointingModelRow::setPointingModelMode (PointingModelModeMod::PointingModelMode pointingModelMode)  {
    2233             :         
    2234             :         
    2235           0 :                 if (hasBeenAdded) {
    2236             :                 
    2237             :                 }
    2238             :         
    2239           0 :                 this->pointingModelMode = pointingModelMode;
    2240             :         
    2241           0 :         }
    2242             :         
    2243             :         
    2244             : 
    2245             :         
    2246             : 
    2247             :         
    2248             :         /**
    2249             :          * Get polarizationType.
    2250             :          * @return polarizationType as PolarizationTypeMod::PolarizationType
    2251             :          */
    2252           0 :         PolarizationTypeMod::PolarizationType CalPointingModelRow::getPolarizationType() const {
    2253             :         
    2254           0 :                 return polarizationType;
    2255             :         }
    2256             : 
    2257             :         /**
    2258             :          * Set polarizationType with the specified PolarizationTypeMod::PolarizationType.
    2259             :          * @param polarizationType The PolarizationTypeMod::PolarizationType value to which polarizationType is to be set.
    2260             :          
    2261             :         
    2262             :                 
    2263             :          */
    2264           0 :         void CalPointingModelRow::setPolarizationType (PolarizationTypeMod::PolarizationType polarizationType)  {
    2265             :         
    2266             :         
    2267           0 :                 if (hasBeenAdded) {
    2268             :                 
    2269             :                 }
    2270             :         
    2271           0 :                 this->polarizationType = polarizationType;
    2272             :         
    2273           0 :         }
    2274             :         
    2275             :         
    2276             : 
    2277             :         
    2278             : 
    2279             :         
    2280             :         /**
    2281             :          * Get numCoeff.
    2282             :          * @return numCoeff as int
    2283             :          */
    2284           0 :         int CalPointingModelRow::getNumCoeff() const {
    2285             :         
    2286           0 :                 return numCoeff;
    2287             :         }
    2288             : 
    2289             :         /**
    2290             :          * Set numCoeff with the specified int.
    2291             :          * @param numCoeff The int value to which numCoeff is to be set.
    2292             :          
    2293             :         
    2294             :                 
    2295             :          */
    2296           0 :         void CalPointingModelRow::setNumCoeff (int numCoeff)  {
    2297             :         
    2298             :         
    2299           0 :                 if (hasBeenAdded) {
    2300             :                 
    2301             :                 }
    2302             :         
    2303           0 :                 this->numCoeff = numCoeff;
    2304             :         
    2305           0 :         }
    2306             :         
    2307             :         
    2308             : 
    2309             :         
    2310             : 
    2311             :         
    2312             :         /**
    2313             :          * Get coeffName.
    2314             :          * @return coeffName as std::vector<std::string >
    2315             :          */
    2316           0 :         std::vector<std::string > CalPointingModelRow::getCoeffName() const {
    2317             :         
    2318           0 :                 return coeffName;
    2319             :         }
    2320             : 
    2321             :         /**
    2322             :          * Set coeffName with the specified std::vector<std::string >.
    2323             :          * @param coeffName The std::vector<std::string > value to which coeffName is to be set.
    2324             :          
    2325             :         
    2326             :                 
    2327             :          */
    2328           0 :         void CalPointingModelRow::setCoeffName (std::vector<std::string > coeffName)  {
    2329             :         
    2330             :         
    2331           0 :                 if (hasBeenAdded) {
    2332             :                 
    2333             :                 }
    2334             :         
    2335           0 :                 this->coeffName = coeffName;
    2336             :         
    2337           0 :         }
    2338             :         
    2339             :         
    2340             : 
    2341             :         
    2342             : 
    2343             :         
    2344             :         /**
    2345             :          * Get coeffVal.
    2346             :          * @return coeffVal as std::vector<float >
    2347             :          */
    2348           0 :         std::vector<float > CalPointingModelRow::getCoeffVal() const {
    2349             :         
    2350           0 :                 return coeffVal;
    2351             :         }
    2352             : 
    2353             :         /**
    2354             :          * Set coeffVal with the specified std::vector<float >.
    2355             :          * @param coeffVal The std::vector<float > value to which coeffVal is to be set.
    2356             :          
    2357             :         
    2358             :                 
    2359             :          */
    2360           0 :         void CalPointingModelRow::setCoeffVal (std::vector<float > coeffVal)  {
    2361             :         
    2362             :         
    2363           0 :                 if (hasBeenAdded) {
    2364             :                 
    2365             :                 }
    2366             :         
    2367           0 :                 this->coeffVal = coeffVal;
    2368             :         
    2369           0 :         }
    2370             :         
    2371             :         
    2372             : 
    2373             :         
    2374             : 
    2375             :         
    2376             :         /**
    2377             :          * Get coeffError.
    2378             :          * @return coeffError as std::vector<float >
    2379             :          */
    2380           0 :         std::vector<float > CalPointingModelRow::getCoeffError() const {
    2381             :         
    2382           0 :                 return coeffError;
    2383             :         }
    2384             : 
    2385             :         /**
    2386             :          * Set coeffError with the specified std::vector<float >.
    2387             :          * @param coeffError The std::vector<float > value to which coeffError is to be set.
    2388             :          
    2389             :         
    2390             :                 
    2391             :          */
    2392           0 :         void CalPointingModelRow::setCoeffError (std::vector<float > coeffError)  {
    2393             :         
    2394             :         
    2395           0 :                 if (hasBeenAdded) {
    2396             :                 
    2397             :                 }
    2398             :         
    2399           0 :                 this->coeffError = coeffError;
    2400             :         
    2401           0 :         }
    2402             :         
    2403             :         
    2404             : 
    2405             :         
    2406             : 
    2407             :         
    2408             :         /**
    2409             :          * Get coeffFixed.
    2410             :          * @return coeffFixed as std::vector<bool >
    2411             :          */
    2412           0 :         std::vector<bool > CalPointingModelRow::getCoeffFixed() const {
    2413             :         
    2414           0 :                 return coeffFixed;
    2415             :         }
    2416             : 
    2417             :         /**
    2418             :          * Set coeffFixed with the specified std::vector<bool >.
    2419             :          * @param coeffFixed The std::vector<bool > value to which coeffFixed is to be set.
    2420             :          
    2421             :         
    2422             :                 
    2423             :          */
    2424           0 :         void CalPointingModelRow::setCoeffFixed (std::vector<bool > coeffFixed)  {
    2425             :         
    2426             :         
    2427           0 :                 if (hasBeenAdded) {
    2428             :                 
    2429             :                 }
    2430             :         
    2431           0 :                 this->coeffFixed = coeffFixed;
    2432             :         
    2433           0 :         }
    2434             :         
    2435             :         
    2436             : 
    2437             :         
    2438             : 
    2439             :         
    2440             :         /**
    2441             :          * Get azimuthRMS.
    2442             :          * @return azimuthRMS as Angle
    2443             :          */
    2444           0 :         Angle CalPointingModelRow::getAzimuthRMS() const {
    2445             :         
    2446           0 :                 return azimuthRMS;
    2447             :         }
    2448             : 
    2449             :         /**
    2450             :          * Set azimuthRMS with the specified Angle.
    2451             :          * @param azimuthRMS The Angle value to which azimuthRMS is to be set.
    2452             :          
    2453             :         
    2454             :                 
    2455             :          */
    2456           0 :         void CalPointingModelRow::setAzimuthRMS (Angle azimuthRMS)  {
    2457             :         
    2458             :         
    2459           0 :                 if (hasBeenAdded) {
    2460             :                 
    2461             :                 }
    2462             :         
    2463           0 :                 this->azimuthRMS = azimuthRMS;
    2464             :         
    2465           0 :         }
    2466             :         
    2467             :         
    2468             : 
    2469             :         
    2470             : 
    2471             :         
    2472             :         /**
    2473             :          * Get elevationRms.
    2474             :          * @return elevationRms as Angle
    2475             :          */
    2476           0 :         Angle CalPointingModelRow::getElevationRms() const {
    2477             :         
    2478           0 :                 return elevationRms;
    2479             :         }
    2480             : 
    2481             :         /**
    2482             :          * Set elevationRms with the specified Angle.
    2483             :          * @param elevationRms The Angle value to which elevationRms is to be set.
    2484             :          
    2485             :         
    2486             :                 
    2487             :          */
    2488           0 :         void CalPointingModelRow::setElevationRms (Angle elevationRms)  {
    2489             :         
    2490             :         
    2491           0 :                 if (hasBeenAdded) {
    2492             :                 
    2493             :                 }
    2494             :         
    2495           0 :                 this->elevationRms = elevationRms;
    2496             :         
    2497           0 :         }
    2498             :         
    2499             :         
    2500             : 
    2501             :         
    2502             : 
    2503             :         
    2504             :         /**
    2505             :          * Get skyRMS.
    2506             :          * @return skyRMS as Angle
    2507             :          */
    2508           0 :         Angle CalPointingModelRow::getSkyRMS() const {
    2509             :         
    2510           0 :                 return skyRMS;
    2511             :         }
    2512             : 
    2513             :         /**
    2514             :          * Set skyRMS with the specified Angle.
    2515             :          * @param skyRMS The Angle value to which skyRMS is to be set.
    2516             :          
    2517             :         
    2518             :                 
    2519             :          */
    2520           0 :         void CalPointingModelRow::setSkyRMS (Angle skyRMS)  {
    2521             :         
    2522             :         
    2523           0 :                 if (hasBeenAdded) {
    2524             :                 
    2525             :                 }
    2526             :         
    2527           0 :                 this->skyRMS = skyRMS;
    2528             :         
    2529           0 :         }
    2530             :         
    2531             :         
    2532             : 
    2533             :         
    2534             : 
    2535             :         
    2536             :         /**
    2537             :          * Get reducedChiSquared.
    2538             :          * @return reducedChiSquared as double
    2539             :          */
    2540           0 :         double CalPointingModelRow::getReducedChiSquared() const {
    2541             :         
    2542           0 :                 return reducedChiSquared;
    2543             :         }
    2544             : 
    2545             :         /**
    2546             :          * Set reducedChiSquared with the specified double.
    2547             :          * @param reducedChiSquared The double value to which reducedChiSquared is to be set.
    2548             :          
    2549             :         
    2550             :                 
    2551             :          */
    2552           0 :         void CalPointingModelRow::setReducedChiSquared (double reducedChiSquared)  {
    2553             :         
    2554             :         
    2555           0 :                 if (hasBeenAdded) {
    2556             :                 
    2557             :                 }
    2558             :         
    2559           0 :                 this->reducedChiSquared = reducedChiSquared;
    2560             :         
    2561           0 :         }
    2562             :         
    2563             :         
    2564             : 
    2565             :         
    2566             :         /**
    2567             :          * The attribute numObs is optional. Return true if this attribute exists.
    2568             :          * @return true if and only if the numObs attribute exists. 
    2569             :          */
    2570           0 :         bool CalPointingModelRow::isNumObsExists() const {
    2571           0 :                 return numObsExists;
    2572             :         }
    2573             :         
    2574             : 
    2575             :         
    2576             :         /**
    2577             :          * Get numObs, which is optional.
    2578             :          * @return numObs as int
    2579             :          * @throw IllegalAccessException If numObs does not exist.
    2580             :          */
    2581           0 :         int CalPointingModelRow::getNumObs() const  {
    2582           0 :                 if (!numObsExists) {
    2583           0 :                         throw IllegalAccessException("numObs", "CalPointingModel");
    2584             :                 }
    2585             :         
    2586           0 :                 return numObs;
    2587             :         }
    2588             : 
    2589             :         /**
    2590             :          * Set numObs with the specified int.
    2591             :          * @param numObs The int value to which numObs is to be set.
    2592             :          
    2593             :         
    2594             :          */
    2595           0 :         void CalPointingModelRow::setNumObs (int numObs) {
    2596             :         
    2597           0 :                 this->numObs = numObs;
    2598             :         
    2599           0 :                 numObsExists = true;
    2600             :         
    2601           0 :         }
    2602             :         
    2603             :         
    2604             :         /**
    2605             :          * Mark numObs, which is an optional field, as non-existent.
    2606             :          */
    2607           0 :         void CalPointingModelRow::clearNumObs () {
    2608           0 :                 numObsExists = false;
    2609           0 :         }
    2610             :         
    2611             : 
    2612             :         
    2613             :         /**
    2614             :          * The attribute coeffFormula is optional. Return true if this attribute exists.
    2615             :          * @return true if and only if the coeffFormula attribute exists. 
    2616             :          */
    2617           0 :         bool CalPointingModelRow::isCoeffFormulaExists() const {
    2618           0 :                 return coeffFormulaExists;
    2619             :         }
    2620             :         
    2621             : 
    2622             :         
    2623             :         /**
    2624             :          * Get coeffFormula, which is optional.
    2625             :          * @return coeffFormula as std::vector<std::string >
    2626             :          * @throw IllegalAccessException If coeffFormula does not exist.
    2627             :          */
    2628           0 :         std::vector<std::string > CalPointingModelRow::getCoeffFormula() const  {
    2629           0 :                 if (!coeffFormulaExists) {
    2630           0 :                         throw IllegalAccessException("coeffFormula", "CalPointingModel");
    2631             :                 }
    2632             :         
    2633           0 :                 return coeffFormula;
    2634             :         }
    2635             : 
    2636             :         /**
    2637             :          * Set coeffFormula with the specified std::vector<std::string >.
    2638             :          * @param coeffFormula The std::vector<std::string > value to which coeffFormula is to be set.
    2639             :          
    2640             :         
    2641             :          */
    2642           0 :         void CalPointingModelRow::setCoeffFormula (std::vector<std::string > coeffFormula) {
    2643             :         
    2644           0 :                 this->coeffFormula = coeffFormula;
    2645             :         
    2646           0 :                 coeffFormulaExists = true;
    2647             :         
    2648           0 :         }
    2649             :         
    2650             :         
    2651             :         /**
    2652             :          * Mark coeffFormula, which is an optional field, as non-existent.
    2653             :          */
    2654           0 :         void CalPointingModelRow::clearCoeffFormula () {
    2655           0 :                 coeffFormulaExists = false;
    2656           0 :         }
    2657             :         
    2658             : 
    2659             :         
    2660             :         ///////////////////////////////////////////////
    2661             :         // Extrinsic Table Attributes getters/setters//
    2662             :         ///////////////////////////////////////////////
    2663             :         
    2664             :         
    2665             : 
    2666             :         
    2667             :         /**
    2668             :          * Get calDataId.
    2669             :          * @return calDataId as Tag
    2670             :          */
    2671           0 :         Tag CalPointingModelRow::getCalDataId() const {
    2672             :         
    2673           0 :                 return calDataId;
    2674             :         }
    2675             : 
    2676             :         /**
    2677             :          * Set calDataId with the specified Tag.
    2678             :          * @param calDataId The Tag value to which calDataId is to be set.
    2679             :          
    2680             :         
    2681             :                 
    2682             :          * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
    2683             :                 
    2684             :          */
    2685           0 :         void CalPointingModelRow::setCalDataId (Tag calDataId)  {
    2686             :         
    2687             :         
    2688           0 :                 if (hasBeenAdded) {
    2689             :                 
    2690           0 :                         throw IllegalAccessException("calDataId", "CalPointingModel");
    2691             :                 
    2692             :                 }
    2693             :         
    2694           0 :                 this->calDataId = calDataId;
    2695             :         
    2696           0 :         }
    2697             :         
    2698             :         
    2699             : 
    2700             :         
    2701             : 
    2702             :         
    2703             :         /**
    2704             :          * Get calReductionId.
    2705             :          * @return calReductionId as Tag
    2706             :          */
    2707           0 :         Tag CalPointingModelRow::getCalReductionId() const {
    2708             :         
    2709           0 :                 return calReductionId;
    2710             :         }
    2711             : 
    2712             :         /**
    2713             :          * Set calReductionId with the specified Tag.
    2714             :          * @param calReductionId The Tag value to which calReductionId is to be set.
    2715             :          
    2716             :         
    2717             :                 
    2718             :          * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
    2719             :                 
    2720             :          */
    2721           0 :         void CalPointingModelRow::setCalReductionId (Tag calReductionId)  {
    2722             :         
    2723             :         
    2724           0 :                 if (hasBeenAdded) {
    2725             :                 
    2726           0 :                         throw IllegalAccessException("calReductionId", "CalPointingModel");
    2727             :                 
    2728             :                 }
    2729             :         
    2730           0 :                 this->calReductionId = calReductionId;
    2731             :         
    2732           0 :         }
    2733             :         
    2734             :         
    2735             : 
    2736             : 
    2737             :         //////////////////////////////////////
    2738             :         // Links Attributes getters/setters //
    2739             :         //////////////////////////////////////
    2740             :         
    2741             :         
    2742             :         
    2743             :         
    2744             :                 
    2745             : 
    2746             :         /**
    2747             :          * Returns the pointer to the row in the CalData table having CalData.calDataId == calDataId
    2748             :          * @return a CalDataRow*
    2749             :          * 
    2750             :          
    2751             :          */
    2752           0 :          CalDataRow* CalPointingModelRow::getCalDataUsingCalDataId() {
    2753             :          
    2754           0 :                 return table.getContainer().getCalData().getRowByKey(calDataId);
    2755             :          }
    2756             :          
    2757             : 
    2758             :         
    2759             : 
    2760             :         
    2761             :         
    2762             :         
    2763             :                 
    2764             : 
    2765             :         /**
    2766             :          * Returns the pointer to the row in the CalReduction table having CalReduction.calReductionId == calReductionId
    2767             :          * @return a CalReductionRow*
    2768             :          * 
    2769             :          
    2770             :          */
    2771           0 :          CalReductionRow* CalPointingModelRow::getCalReductionUsingCalReductionId() {
    2772             :          
    2773           0 :                 return table.getContainer().getCalReduction().getRowByKey(calReductionId);
    2774             :          }
    2775             :          
    2776             : 
    2777             :         
    2778             : 
    2779             :         
    2780             :         /**
    2781             :          * Create a CalPointingModelRow.
    2782             :          * <p>
    2783             :          * This constructor is private because only the
    2784             :          * table can create rows.  All rows know the table
    2785             :          * to which they belong.
    2786             :          * @param table The table to which this row belongs.
    2787             :          */ 
    2788           0 :         CalPointingModelRow::CalPointingModelRow (CalPointingModelTable &t) : table(t) {
    2789           0 :                 hasBeenAdded = false;
    2790             :                 
    2791             :         
    2792             :         
    2793             : 
    2794             :         
    2795             : 
    2796             :         
    2797             : 
    2798             :         
    2799             : 
    2800             :         
    2801             : 
    2802             :         
    2803             : 
    2804             :         
    2805             : 
    2806             :         
    2807             : 
    2808             :         
    2809             : 
    2810             :         
    2811             : 
    2812             :         
    2813             : 
    2814             :         
    2815             : 
    2816             :         
    2817             : 
    2818             :         
    2819             : 
    2820             :         
    2821             : 
    2822             :         
    2823             : 
    2824             :         
    2825           0 :                 numObsExists = false;
    2826             :         
    2827             : 
    2828             :         
    2829           0 :                 coeffFormulaExists = false;
    2830             :         
    2831             : 
    2832             :         
    2833             :         
    2834             : 
    2835             :         
    2836             : 
    2837             :         
    2838             :         
    2839             :         
    2840             :         
    2841             : 
    2842             :         
    2843             : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).          
    2844           0 : receiverBand = CReceiverBand::from_int(0);
    2845             :         
    2846             : 
    2847             :         
    2848             : 
    2849             :         
    2850             : 
    2851             :         
    2852             : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).          
    2853           0 : antennaMake = CAntennaMake::from_int(0);
    2854             :         
    2855             : 
    2856             :         
    2857             : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).          
    2858           0 : pointingModelMode = CPointingModelMode::from_int(0);
    2859             :         
    2860             : 
    2861             :         
    2862             : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).          
    2863           0 : polarizationType = CPolarizationType::from_int(0);
    2864             :         
    2865             : 
    2866             :         
    2867             : 
    2868             :         
    2869             : 
    2870             :         
    2871             : 
    2872             :         
    2873             : 
    2874             :         
    2875             : 
    2876             :         
    2877             : 
    2878             :         
    2879             : 
    2880             :         
    2881             : 
    2882             :         
    2883             : 
    2884             :         
    2885             : 
    2886             :         
    2887             : 
    2888             :         
    2889             :         
    2890           0 :          fromBinMethods["antennaName"] = &CalPointingModelRow::antennaNameFromBin; 
    2891           0 :          fromBinMethods["receiverBand"] = &CalPointingModelRow::receiverBandFromBin; 
    2892           0 :          fromBinMethods["calDataId"] = &CalPointingModelRow::calDataIdFromBin; 
    2893           0 :          fromBinMethods["calReductionId"] = &CalPointingModelRow::calReductionIdFromBin; 
    2894           0 :          fromBinMethods["startValidTime"] = &CalPointingModelRow::startValidTimeFromBin; 
    2895           0 :          fromBinMethods["endValidTime"] = &CalPointingModelRow::endValidTimeFromBin; 
    2896           0 :          fromBinMethods["antennaMake"] = &CalPointingModelRow::antennaMakeFromBin; 
    2897           0 :          fromBinMethods["pointingModelMode"] = &CalPointingModelRow::pointingModelModeFromBin; 
    2898           0 :          fromBinMethods["polarizationType"] = &CalPointingModelRow::polarizationTypeFromBin; 
    2899           0 :          fromBinMethods["numCoeff"] = &CalPointingModelRow::numCoeffFromBin; 
    2900           0 :          fromBinMethods["coeffName"] = &CalPointingModelRow::coeffNameFromBin; 
    2901           0 :          fromBinMethods["coeffVal"] = &CalPointingModelRow::coeffValFromBin; 
    2902           0 :          fromBinMethods["coeffError"] = &CalPointingModelRow::coeffErrorFromBin; 
    2903           0 :          fromBinMethods["coeffFixed"] = &CalPointingModelRow::coeffFixedFromBin; 
    2904           0 :          fromBinMethods["azimuthRMS"] = &CalPointingModelRow::azimuthRMSFromBin; 
    2905           0 :          fromBinMethods["elevationRms"] = &CalPointingModelRow::elevationRmsFromBin; 
    2906           0 :          fromBinMethods["skyRMS"] = &CalPointingModelRow::skyRMSFromBin; 
    2907           0 :          fromBinMethods["reducedChiSquared"] = &CalPointingModelRow::reducedChiSquaredFromBin; 
    2908             :                 
    2909             :         
    2910           0 :          fromBinMethods["numObs"] = &CalPointingModelRow::numObsFromBin; 
    2911           0 :          fromBinMethods["coeffFormula"] = &CalPointingModelRow::coeffFormulaFromBin; 
    2912             :         
    2913             :         
    2914             :         
    2915             :         
    2916             :                                  
    2917           0 :         fromTextMethods["antennaName"] = &CalPointingModelRow::antennaNameFromText;
    2918             :                  
    2919             :         
    2920             :                                  
    2921           0 :         fromTextMethods["receiverBand"] = &CalPointingModelRow::receiverBandFromText;
    2922             :                  
    2923             :         
    2924             :                                  
    2925           0 :         fromTextMethods["calDataId"] = &CalPointingModelRow::calDataIdFromText;
    2926             :                  
    2927             :         
    2928             :                                  
    2929           0 :         fromTextMethods["calReductionId"] = &CalPointingModelRow::calReductionIdFromText;
    2930             :                  
    2931             :         
    2932             :                                  
    2933           0 :         fromTextMethods["startValidTime"] = &CalPointingModelRow::startValidTimeFromText;
    2934             :                  
    2935             :         
    2936             :                                  
    2937           0 :         fromTextMethods["endValidTime"] = &CalPointingModelRow::endValidTimeFromText;
    2938             :                  
    2939             :         
    2940             :                                  
    2941           0 :         fromTextMethods["antennaMake"] = &CalPointingModelRow::antennaMakeFromText;
    2942             :                  
    2943             :         
    2944             :                                  
    2945           0 :         fromTextMethods["pointingModelMode"] = &CalPointingModelRow::pointingModelModeFromText;
    2946             :                  
    2947             :         
    2948             :                                  
    2949           0 :         fromTextMethods["polarizationType"] = &CalPointingModelRow::polarizationTypeFromText;
    2950             :                  
    2951             :         
    2952             :                                  
    2953           0 :         fromTextMethods["numCoeff"] = &CalPointingModelRow::numCoeffFromText;
    2954             :                  
    2955             :         
    2956             :                                  
    2957           0 :         fromTextMethods["coeffName"] = &CalPointingModelRow::coeffNameFromText;
    2958             :                  
    2959             :         
    2960             :                                  
    2961           0 :         fromTextMethods["coeffVal"] = &CalPointingModelRow::coeffValFromText;
    2962             :                  
    2963             :         
    2964             :                                  
    2965           0 :         fromTextMethods["coeffError"] = &CalPointingModelRow::coeffErrorFromText;
    2966             :                  
    2967             :         
    2968             :                                  
    2969           0 :         fromTextMethods["coeffFixed"] = &CalPointingModelRow::coeffFixedFromText;
    2970             :                  
    2971             :         
    2972             :                                  
    2973           0 :         fromTextMethods["azimuthRMS"] = &CalPointingModelRow::azimuthRMSFromText;
    2974             :                  
    2975             :         
    2976             :                                  
    2977           0 :         fromTextMethods["elevationRms"] = &CalPointingModelRow::elevationRmsFromText;
    2978             :                  
    2979             :         
    2980             :                                  
    2981           0 :         fromTextMethods["skyRMS"] = &CalPointingModelRow::skyRMSFromText;
    2982             :                  
    2983             :         
    2984             :                                  
    2985           0 :         fromTextMethods["reducedChiSquared"] = &CalPointingModelRow::reducedChiSquaredFromText;
    2986             :                  
    2987             :         
    2988             : 
    2989             :          
    2990             :                                 
    2991           0 :         fromTextMethods["numObs"] = &CalPointingModelRow::numObsFromText;
    2992             :                         
    2993             :          
    2994             :                                 
    2995           0 :         fromTextMethods["coeffFormula"] = &CalPointingModelRow::coeffFormulaFromText;
    2996             :                         
    2997             :                 
    2998           0 :         }
    2999             :         
    3000           0 :         CalPointingModelRow::CalPointingModelRow (CalPointingModelTable &t, CalPointingModelRow *row) : table(t) {
    3001           0 :                 hasBeenAdded = false;
    3002             :                 
    3003           0 :                 if (row == 0) {
    3004             :         
    3005             :         
    3006             :         
    3007             : 
    3008             :         
    3009             : 
    3010             :         
    3011             : 
    3012             :         
    3013             : 
    3014             :         
    3015             : 
    3016             :         
    3017             : 
    3018             :         
    3019             : 
    3020             :         
    3021             : 
    3022             :         
    3023             : 
    3024             :         
    3025             : 
    3026             :         
    3027             : 
    3028             :         
    3029             : 
    3030             :         
    3031             : 
    3032             :         
    3033             : 
    3034             :         
    3035             : 
    3036             :         
    3037             : 
    3038             :         
    3039           0 :                 numObsExists = false;
    3040             :         
    3041             : 
    3042             :         
    3043           0 :                 coeffFormulaExists = false;
    3044             :         
    3045             : 
    3046             :         
    3047             :         
    3048             : 
    3049             :         
    3050             :                 
    3051             :                 }
    3052             :                 else {
    3053             :         
    3054             :                 
    3055           0 :                         antennaName = row->antennaName;
    3056             :                 
    3057           0 :                         receiverBand = row->receiverBand;
    3058             :                 
    3059           0 :                         calDataId = row->calDataId;
    3060             :                 
    3061           0 :                         calReductionId = row->calReductionId;
    3062             :                 
    3063             :                 
    3064             :                 
    3065             :                 
    3066           0 :                         startValidTime = row->startValidTime;
    3067             :                 
    3068           0 :                         endValidTime = row->endValidTime;
    3069             :                 
    3070           0 :                         antennaMake = row->antennaMake;
    3071             :                 
    3072           0 :                         pointingModelMode = row->pointingModelMode;
    3073             :                 
    3074           0 :                         polarizationType = row->polarizationType;
    3075             :                 
    3076           0 :                         numCoeff = row->numCoeff;
    3077             :                 
    3078           0 :                         coeffName = row->coeffName;
    3079             :                 
    3080           0 :                         coeffVal = row->coeffVal;
    3081             :                 
    3082           0 :                         coeffError = row->coeffError;
    3083             :                 
    3084           0 :                         coeffFixed = row->coeffFixed;
    3085             :                 
    3086           0 :                         azimuthRMS = row->azimuthRMS;
    3087             :                 
    3088           0 :                         elevationRms = row->elevationRms;
    3089             :                 
    3090           0 :                         skyRMS = row->skyRMS;
    3091             :                 
    3092           0 :                         reducedChiSquared = row->reducedChiSquared;
    3093             :                 
    3094             :                 
    3095             :                 
    3096             :                 
    3097           0 :                 if (row->numObsExists) {
    3098           0 :                         numObs = row->numObs;                
    3099           0 :                         numObsExists = true;
    3100             :                 }
    3101             :                 else
    3102           0 :                         numObsExists = false;
    3103             :                 
    3104           0 :                 if (row->coeffFormulaExists) {
    3105           0 :                         coeffFormula = row->coeffFormula;            
    3106           0 :                         coeffFormulaExists = true;
    3107             :                 }
    3108             :                 else
    3109           0 :                         coeffFormulaExists = false;
    3110             :                 
    3111             :                 }
    3112             :                 
    3113           0 :                  fromBinMethods["antennaName"] = &CalPointingModelRow::antennaNameFromBin; 
    3114           0 :                  fromBinMethods["receiverBand"] = &CalPointingModelRow::receiverBandFromBin; 
    3115           0 :                  fromBinMethods["calDataId"] = &CalPointingModelRow::calDataIdFromBin; 
    3116           0 :                  fromBinMethods["calReductionId"] = &CalPointingModelRow::calReductionIdFromBin; 
    3117           0 :                  fromBinMethods["startValidTime"] = &CalPointingModelRow::startValidTimeFromBin; 
    3118           0 :                  fromBinMethods["endValidTime"] = &CalPointingModelRow::endValidTimeFromBin; 
    3119           0 :                  fromBinMethods["antennaMake"] = &CalPointingModelRow::antennaMakeFromBin; 
    3120           0 :                  fromBinMethods["pointingModelMode"] = &CalPointingModelRow::pointingModelModeFromBin; 
    3121           0 :                  fromBinMethods["polarizationType"] = &CalPointingModelRow::polarizationTypeFromBin; 
    3122           0 :                  fromBinMethods["numCoeff"] = &CalPointingModelRow::numCoeffFromBin; 
    3123           0 :                  fromBinMethods["coeffName"] = &CalPointingModelRow::coeffNameFromBin; 
    3124           0 :                  fromBinMethods["coeffVal"] = &CalPointingModelRow::coeffValFromBin; 
    3125           0 :                  fromBinMethods["coeffError"] = &CalPointingModelRow::coeffErrorFromBin; 
    3126           0 :                  fromBinMethods["coeffFixed"] = &CalPointingModelRow::coeffFixedFromBin; 
    3127           0 :                  fromBinMethods["azimuthRMS"] = &CalPointingModelRow::azimuthRMSFromBin; 
    3128           0 :                  fromBinMethods["elevationRms"] = &CalPointingModelRow::elevationRmsFromBin; 
    3129           0 :                  fromBinMethods["skyRMS"] = &CalPointingModelRow::skyRMSFromBin; 
    3130           0 :                  fromBinMethods["reducedChiSquared"] = &CalPointingModelRow::reducedChiSquaredFromBin; 
    3131             :                         
    3132             :         
    3133           0 :                  fromBinMethods["numObs"] = &CalPointingModelRow::numObsFromBin; 
    3134           0 :                  fromBinMethods["coeffFormula"] = &CalPointingModelRow::coeffFormulaFromBin; 
    3135             :                         
    3136           0 :         }
    3137             : 
    3138             :         
    3139           0 :         bool CalPointingModelRow::compareNoAutoInc(std::string antennaName, ReceiverBandMod::ReceiverBand receiverBand, Tag calDataId, Tag calReductionId, ArrayTime startValidTime, ArrayTime endValidTime, AntennaMakeMod::AntennaMake antennaMake, PointingModelModeMod::PointingModelMode pointingModelMode, PolarizationTypeMod::PolarizationType polarizationType, int numCoeff, std::vector<std::string > coeffName, std::vector<float > coeffVal, std::vector<float > coeffError, std::vector<bool > coeffFixed, Angle azimuthRMS, Angle elevationRms, Angle skyRMS, double reducedChiSquared) {
    3140             :                 bool result;
    3141           0 :                 result = true;
    3142             :                 
    3143             :         
    3144             :                 
    3145           0 :                 result = result && (this->antennaName == antennaName);
    3146             :                 
    3147           0 :                 if (!result) return false;
    3148             :         
    3149             : 
    3150             :         
    3151             :                 
    3152           0 :                 result = result && (this->receiverBand == receiverBand);
    3153             :                 
    3154           0 :                 if (!result) return false;
    3155             :         
    3156             : 
    3157             :         
    3158             :                 
    3159           0 :                 result = result && (this->calDataId == calDataId);
    3160             :                 
    3161           0 :                 if (!result) return false;
    3162             :         
    3163             : 
    3164             :         
    3165             :                 
    3166           0 :                 result = result && (this->calReductionId == calReductionId);
    3167             :                 
    3168           0 :                 if (!result) return false;
    3169             :         
    3170             : 
    3171             :         
    3172             :                 
    3173           0 :                 result = result && (this->startValidTime == startValidTime);
    3174             :                 
    3175           0 :                 if (!result) return false;
    3176             :         
    3177             : 
    3178             :         
    3179             :                 
    3180           0 :                 result = result && (this->endValidTime == endValidTime);
    3181             :                 
    3182           0 :                 if (!result) return false;
    3183             :         
    3184             : 
    3185             :         
    3186             :                 
    3187           0 :                 result = result && (this->antennaMake == antennaMake);
    3188             :                 
    3189           0 :                 if (!result) return false;
    3190             :         
    3191             : 
    3192             :         
    3193             :                 
    3194           0 :                 result = result && (this->pointingModelMode == pointingModelMode);
    3195             :                 
    3196           0 :                 if (!result) return false;
    3197             :         
    3198             : 
    3199             :         
    3200             :                 
    3201           0 :                 result = result && (this->polarizationType == polarizationType);
    3202             :                 
    3203           0 :                 if (!result) return false;
    3204             :         
    3205             : 
    3206             :         
    3207             :                 
    3208           0 :                 result = result && (this->numCoeff == numCoeff);
    3209             :                 
    3210           0 :                 if (!result) return false;
    3211             :         
    3212             : 
    3213             :         
    3214             :                 
    3215           0 :                 result = result && (this->coeffName == coeffName);
    3216             :                 
    3217           0 :                 if (!result) return false;
    3218             :         
    3219             : 
    3220             :         
    3221             :                 
    3222           0 :                 result = result && (this->coeffVal == coeffVal);
    3223             :                 
    3224           0 :                 if (!result) return false;
    3225             :         
    3226             : 
    3227             :         
    3228             :                 
    3229           0 :                 result = result && (this->coeffError == coeffError);
    3230             :                 
    3231           0 :                 if (!result) return false;
    3232             :         
    3233             : 
    3234             :         
    3235             :                 
    3236           0 :                 result = result && (this->coeffFixed == coeffFixed);
    3237             :                 
    3238           0 :                 if (!result) return false;
    3239             :         
    3240             : 
    3241             :         
    3242             :                 
    3243           0 :                 result = result && (this->azimuthRMS == azimuthRMS);
    3244             :                 
    3245           0 :                 if (!result) return false;
    3246             :         
    3247             : 
    3248             :         
    3249             :                 
    3250           0 :                 result = result && (this->elevationRms == elevationRms);
    3251             :                 
    3252           0 :                 if (!result) return false;
    3253             :         
    3254             : 
    3255             :         
    3256             :                 
    3257           0 :                 result = result && (this->skyRMS == skyRMS);
    3258             :                 
    3259           0 :                 if (!result) return false;
    3260             :         
    3261             : 
    3262             :         
    3263             :                 
    3264           0 :                 result = result && (this->reducedChiSquared == reducedChiSquared);
    3265             :                 
    3266           0 :                 if (!result) return false;
    3267             :         
    3268             : 
    3269           0 :                 return result;
    3270             :         }       
    3271             :         
    3272             :         
    3273             :         
    3274           0 :         bool CalPointingModelRow::compareRequiredValue(ArrayTime startValidTime, ArrayTime endValidTime, AntennaMakeMod::AntennaMake antennaMake, PointingModelModeMod::PointingModelMode pointingModelMode, PolarizationTypeMod::PolarizationType polarizationType, int numCoeff, std::vector<std::string > coeffName, std::vector<float > coeffVal, std::vector<float > coeffError, std::vector<bool > coeffFixed, Angle azimuthRMS, Angle elevationRms, Angle skyRMS, double reducedChiSquared) {
    3275             :                 bool result;
    3276           0 :                 result = true;
    3277             :                 
    3278             :         
    3279           0 :                 if (!(this->startValidTime == startValidTime)) return false;
    3280             :         
    3281             : 
    3282             :         
    3283           0 :                 if (!(this->endValidTime == endValidTime)) return false;
    3284             :         
    3285             : 
    3286             :         
    3287           0 :                 if (!(this->antennaMake == antennaMake)) return false;
    3288             :         
    3289             : 
    3290             :         
    3291           0 :                 if (!(this->pointingModelMode == pointingModelMode)) return false;
    3292             :         
    3293             : 
    3294             :         
    3295           0 :                 if (!(this->polarizationType == polarizationType)) return false;
    3296             :         
    3297             : 
    3298             :         
    3299           0 :                 if (!(this->numCoeff == numCoeff)) return false;
    3300             :         
    3301             : 
    3302             :         
    3303           0 :                 if (!(this->coeffName == coeffName)) return false;
    3304             :         
    3305             : 
    3306             :         
    3307           0 :                 if (!(this->coeffVal == coeffVal)) return false;
    3308             :         
    3309             : 
    3310             :         
    3311           0 :                 if (!(this->coeffError == coeffError)) return false;
    3312             :         
    3313             : 
    3314             :         
    3315           0 :                 if (!(this->coeffFixed == coeffFixed)) return false;
    3316             :         
    3317             : 
    3318             :         
    3319           0 :                 if (!(this->azimuthRMS == azimuthRMS)) return false;
    3320             :         
    3321             : 
    3322             :         
    3323           0 :                 if (!(this->elevationRms == elevationRms)) return false;
    3324             :         
    3325             : 
    3326             :         
    3327           0 :                 if (!(this->skyRMS == skyRMS)) return false;
    3328             :         
    3329             : 
    3330             :         
    3331           0 :                 if (!(this->reducedChiSquared == reducedChiSquared)) return false;
    3332             :         
    3333             : 
    3334           0 :                 return result;
    3335             :         }
    3336             :         
    3337             :         
    3338             :         /**
    3339             :          * Return true if all required attributes of the value part are equal to their homologues
    3340             :          * in x and false otherwise.
    3341             :          *
    3342             : 
    3343             :          * @param x a pointer on the CalPointingModelRow whose required attributes of the value part 
    3344             : 
    3345             :          * will be compared with those of this.
    3346             :          * @return a boolean.
    3347             :          */
    3348           0 :         bool CalPointingModelRow::equalByRequiredValue(CalPointingModelRow*  x ) {
    3349             :                 
    3350             :                         
    3351           0 :                 if (this->startValidTime != x->startValidTime) return false;
    3352             :                         
    3353           0 :                 if (this->endValidTime != x->endValidTime) return false;
    3354             :                         
    3355           0 :                 if (this->antennaMake != x->antennaMake) return false;
    3356             :                         
    3357           0 :                 if (this->pointingModelMode != x->pointingModelMode) return false;
    3358             :                         
    3359           0 :                 if (this->polarizationType != x->polarizationType) return false;
    3360             :                         
    3361           0 :                 if (this->numCoeff != x->numCoeff) return false;
    3362             :                         
    3363           0 :                 if (this->coeffName != x->coeffName) return false;
    3364             :                         
    3365           0 :                 if (this->coeffVal != x->coeffVal) return false;
    3366             :                         
    3367           0 :                 if (this->coeffError != x->coeffError) return false;
    3368             :                         
    3369           0 :                 if (this->coeffFixed != x->coeffFixed) return false;
    3370             :                         
    3371           0 :                 if (this->azimuthRMS != x->azimuthRMS) return false;
    3372             :                         
    3373           0 :                 if (this->elevationRms != x->elevationRms) return false;
    3374             :                         
    3375           0 :                 if (this->skyRMS != x->skyRMS) return false;
    3376             :                         
    3377           0 :                 if (this->reducedChiSquared != x->reducedChiSquared) return false;
    3378             :                         
    3379             :                 
    3380           0 :                 return true;
    3381             :         }       
    3382             :         
    3383             : /*
    3384             :          map<string, CalPointingModelAttributeFromBin> CalPointingModelRow::initFromBinMethods() {
    3385             :                 map<string, CalPointingModelAttributeFromBin> result;
    3386             :                 
    3387             :                 result["antennaName"] = &CalPointingModelRow::antennaNameFromBin;
    3388             :                 result["receiverBand"] = &CalPointingModelRow::receiverBandFromBin;
    3389             :                 result["calDataId"] = &CalPointingModelRow::calDataIdFromBin;
    3390             :                 result["calReductionId"] = &CalPointingModelRow::calReductionIdFromBin;
    3391             :                 result["startValidTime"] = &CalPointingModelRow::startValidTimeFromBin;
    3392             :                 result["endValidTime"] = &CalPointingModelRow::endValidTimeFromBin;
    3393             :                 result["antennaMake"] = &CalPointingModelRow::antennaMakeFromBin;
    3394             :                 result["pointingModelMode"] = &CalPointingModelRow::pointingModelModeFromBin;
    3395             :                 result["polarizationType"] = &CalPointingModelRow::polarizationTypeFromBin;
    3396             :                 result["numCoeff"] = &CalPointingModelRow::numCoeffFromBin;
    3397             :                 result["coeffName"] = &CalPointingModelRow::coeffNameFromBin;
    3398             :                 result["coeffVal"] = &CalPointingModelRow::coeffValFromBin;
    3399             :                 result["coeffError"] = &CalPointingModelRow::coeffErrorFromBin;
    3400             :                 result["coeffFixed"] = &CalPointingModelRow::coeffFixedFromBin;
    3401             :                 result["azimuthRMS"] = &CalPointingModelRow::azimuthRMSFromBin;
    3402             :                 result["elevationRms"] = &CalPointingModelRow::elevationRmsFromBin;
    3403             :                 result["skyRMS"] = &CalPointingModelRow::skyRMSFromBin;
    3404             :                 result["reducedChiSquared"] = &CalPointingModelRow::reducedChiSquaredFromBin;
    3405             :                 
    3406             :                 
    3407             :                 result["numObs"] = &CalPointingModelRow::numObsFromBin;
    3408             :                 result["coeffFormula"] = &CalPointingModelRow::coeffFormulaFromBin;
    3409             :                         
    3410             :                 
    3411             :                 return result;  
    3412             :         }
    3413             : */      
    3414             : } // End namespace asdm
    3415             :  

Generated by: LCOV version 1.16