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 CalHolographyRow.cpp
32 : */
33 :
34 : #include <vector>
35 : #include <set>
36 :
37 : #include <alma/ASDM/ASDM.h>
38 : #include <alma/ASDM/CalHolographyRow.h>
39 : #include <alma/ASDM/CalHolographyTable.h>
40 :
41 : #include <alma/ASDM/CalReductionTable.h>
42 : #include <alma/ASDM/CalReductionRow.h>
43 :
44 : #include <alma/ASDM/CalDataTable.h>
45 : #include <alma/ASDM/CalDataRow.h>
46 :
47 :
48 : using asdm::ASDM;
49 : using asdm::CalHolographyRow;
50 : using asdm::CalHolographyTable;
51 :
52 : using asdm::CalReductionTable;
53 : using asdm::CalReductionRow;
54 :
55 : using asdm::CalDataTable;
56 : using asdm::CalDataRow;
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 : CalHolographyRow::~CalHolographyRow() {
70 0 : }
71 :
72 : /**
73 : * Return the table to which this row belongs.
74 : */
75 0 : CalHolographyTable &CalHolographyRow::getTable() const {
76 0 : return table;
77 : }
78 :
79 0 : bool CalHolographyRow::isAdded() const {
80 0 : return hasBeenAdded;
81 : }
82 :
83 0 : void CalHolographyRow::isAdded(bool added) {
84 0 : hasBeenAdded = added;
85 0 : }
86 :
87 : #ifndef WITHOUT_ACS
88 : using asdmIDL::CalHolographyRowIDL;
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 CalHolographyRowIDL struct.
95 : */
96 : CalHolographyRowIDL *CalHolographyRow::toIDL() const {
97 : CalHolographyRowIDL *x = new CalHolographyRowIDL ();
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->antennaMake = antennaMake;
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 : x->ambientTemperature = ambientTemperature.toIDLTemperature();
152 :
153 :
154 :
155 :
156 :
157 :
158 :
159 :
160 :
161 : x->focusPosition.length(focusPosition.size());
162 : for (unsigned int i = 0; i < focusPosition.size(); ++i) {
163 :
164 : x->focusPosition[i] = focusPosition.at(i).toIDLLength();
165 :
166 : }
167 :
168 :
169 :
170 :
171 :
172 :
173 :
174 :
175 :
176 : x->frequencyRange.length(frequencyRange.size());
177 : for (unsigned int i = 0; i < frequencyRange.size(); ++i) {
178 :
179 : x->frequencyRange[i] = frequencyRange.at(i).toIDLFrequency();
180 :
181 : }
182 :
183 :
184 :
185 :
186 :
187 :
188 :
189 :
190 :
191 :
192 : x->illuminationTaper = illuminationTaper;
193 :
194 :
195 :
196 :
197 :
198 :
199 :
200 :
201 :
202 :
203 :
204 : x->numReceptor = numReceptor;
205 :
206 :
207 :
208 :
209 :
210 :
211 :
212 :
213 :
214 :
215 : x->polarizationTypes.length(polarizationTypes.size());
216 : for (unsigned int i = 0; i < polarizationTypes.size(); ++i) {
217 :
218 :
219 : x->polarizationTypes[i] = polarizationTypes.at(i);
220 :
221 :
222 : }
223 :
224 :
225 :
226 :
227 :
228 :
229 :
230 :
231 :
232 :
233 : x->numPanelModes = numPanelModes;
234 :
235 :
236 :
237 :
238 :
239 :
240 :
241 :
242 :
243 :
244 :
245 : x->receiverBand = receiverBand;
246 :
247 :
248 :
249 :
250 :
251 :
252 :
253 :
254 :
255 :
256 : x->beamMapUID = beamMapUID.toIDLEntityRef();
257 :
258 :
259 :
260 :
261 :
262 :
263 :
264 :
265 :
266 : x->rawRMS = rawRMS.toIDLLength();
267 :
268 :
269 :
270 :
271 :
272 :
273 :
274 :
275 :
276 : x->weightedRMS = weightedRMS.toIDLLength();
277 :
278 :
279 :
280 :
281 :
282 :
283 :
284 :
285 :
286 : x->surfaceMapUID = surfaceMapUID.toIDLEntityRef();
287 :
288 :
289 :
290 :
291 :
292 :
293 :
294 :
295 :
296 : x->direction.length(direction.size());
297 : for (unsigned int i = 0; i < direction.size(); ++i) {
298 :
299 : x->direction[i] = direction.at(i).toIDLAngle();
300 :
301 : }
302 :
303 :
304 :
305 :
306 :
307 :
308 :
309 : x->numScrewExists = numScrewExists;
310 :
311 :
312 :
313 :
314 : x->numScrew = numScrew;
315 :
316 :
317 :
318 :
319 :
320 :
321 :
322 :
323 : x->screwNameExists = screwNameExists;
324 :
325 :
326 :
327 : x->screwName.length(screwName.size());
328 : for (unsigned int i = 0; i < screwName.size(); ++i) {
329 :
330 :
331 : x->screwName[i] = CORBA::string_dup(screwName.at(i).c_str());
332 :
333 :
334 : }
335 :
336 :
337 :
338 :
339 :
340 :
341 :
342 : x->screwMotionExists = screwMotionExists;
343 :
344 :
345 :
346 : x->screwMotion.length(screwMotion.size());
347 : for (unsigned int i = 0; i < screwMotion.size(); ++i) {
348 :
349 : x->screwMotion[i] = screwMotion.at(i).toIDLLength();
350 :
351 : }
352 :
353 :
354 :
355 :
356 :
357 :
358 :
359 : x->screwMotionErrorExists = screwMotionErrorExists;
360 :
361 :
362 :
363 : x->screwMotionError.length(screwMotionError.size());
364 : for (unsigned int i = 0; i < screwMotionError.size(); ++i) {
365 :
366 : x->screwMotionError[i] = screwMotionError.at(i).toIDLLength();
367 :
368 : }
369 :
370 :
371 :
372 :
373 :
374 :
375 :
376 : x->gravCorrectionExists = gravCorrectionExists;
377 :
378 :
379 :
380 :
381 : x->gravCorrection = gravCorrection;
382 :
383 :
384 :
385 :
386 :
387 :
388 :
389 :
390 : x->gravOptRangeExists = gravOptRangeExists;
391 :
392 :
393 :
394 : x->gravOptRange.length(gravOptRange.size());
395 : for (unsigned int i = 0; i < gravOptRange.size(); ++i) {
396 :
397 : x->gravOptRange[i] = gravOptRange.at(i).toIDLAngle();
398 :
399 : }
400 :
401 :
402 :
403 :
404 :
405 :
406 :
407 : x->tempCorrectionExists = tempCorrectionExists;
408 :
409 :
410 :
411 :
412 : x->tempCorrection = tempCorrection;
413 :
414 :
415 :
416 :
417 :
418 :
419 :
420 :
421 : x->tempOptRangeExists = tempOptRangeExists;
422 :
423 :
424 :
425 : x->tempOptRange.length(tempOptRange.size());
426 : for (unsigned int i = 0; i < tempOptRange.size(); ++i) {
427 :
428 : x->tempOptRange[i] = tempOptRange.at(i).toIDLTemperature();
429 :
430 : }
431 :
432 :
433 :
434 :
435 :
436 :
437 :
438 :
439 :
440 :
441 :
442 :
443 :
444 : x->calDataId = calDataId.toIDLTag();
445 :
446 :
447 :
448 :
449 :
450 :
451 :
452 :
453 :
454 :
455 : x->calReductionId = calReductionId.toIDLTag();
456 :
457 :
458 :
459 :
460 :
461 :
462 :
463 :
464 :
465 :
466 :
467 : return x;
468 :
469 : }
470 :
471 : void CalHolographyRow::toIDL(asdmIDL::CalHolographyRowIDL& x) const {
472 : // Set the x's fields.
473 :
474 :
475 :
476 :
477 :
478 :
479 :
480 :
481 : x.antennaName = CORBA::string_dup(antennaName.c_str());
482 :
483 :
484 :
485 :
486 :
487 :
488 :
489 :
490 :
491 :
492 :
493 : x.antennaMake = antennaMake;
494 :
495 :
496 :
497 :
498 :
499 :
500 :
501 :
502 :
503 :
504 : x.startValidTime = startValidTime.toIDLArrayTime();
505 :
506 :
507 :
508 :
509 :
510 :
511 :
512 :
513 :
514 : x.endValidTime = endValidTime.toIDLArrayTime();
515 :
516 :
517 :
518 :
519 :
520 :
521 :
522 :
523 :
524 : x.ambientTemperature = ambientTemperature.toIDLTemperature();
525 :
526 :
527 :
528 :
529 :
530 :
531 :
532 :
533 :
534 : x.focusPosition.length(focusPosition.size());
535 : for (unsigned int i = 0; i < focusPosition.size(); ++i) {
536 :
537 : x.focusPosition[i] = focusPosition.at(i).toIDLLength();
538 :
539 : }
540 :
541 :
542 :
543 :
544 :
545 :
546 :
547 :
548 :
549 : x.frequencyRange.length(frequencyRange.size());
550 : for (unsigned int i = 0; i < frequencyRange.size(); ++i) {
551 :
552 : x.frequencyRange[i] = frequencyRange.at(i).toIDLFrequency();
553 :
554 : }
555 :
556 :
557 :
558 :
559 :
560 :
561 :
562 :
563 :
564 :
565 : x.illuminationTaper = illuminationTaper;
566 :
567 :
568 :
569 :
570 :
571 :
572 :
573 :
574 :
575 :
576 :
577 : x.numReceptor = numReceptor;
578 :
579 :
580 :
581 :
582 :
583 :
584 :
585 :
586 :
587 :
588 : x.polarizationTypes.length(polarizationTypes.size());
589 : for (unsigned int i = 0; i < polarizationTypes.size(); ++i) {
590 :
591 :
592 : x.polarizationTypes[i] = polarizationTypes.at(i);
593 :
594 :
595 : }
596 :
597 :
598 :
599 :
600 :
601 :
602 :
603 :
604 :
605 :
606 : x.numPanelModes = numPanelModes;
607 :
608 :
609 :
610 :
611 :
612 :
613 :
614 :
615 :
616 :
617 :
618 : x.receiverBand = receiverBand;
619 :
620 :
621 :
622 :
623 :
624 :
625 :
626 :
627 :
628 :
629 : x.beamMapUID = beamMapUID.toIDLEntityRef();
630 :
631 :
632 :
633 :
634 :
635 :
636 :
637 :
638 :
639 : x.rawRMS = rawRMS.toIDLLength();
640 :
641 :
642 :
643 :
644 :
645 :
646 :
647 :
648 :
649 : x.weightedRMS = weightedRMS.toIDLLength();
650 :
651 :
652 :
653 :
654 :
655 :
656 :
657 :
658 :
659 : x.surfaceMapUID = surfaceMapUID.toIDLEntityRef();
660 :
661 :
662 :
663 :
664 :
665 :
666 :
667 :
668 :
669 : x.direction.length(direction.size());
670 : for (unsigned int i = 0; i < direction.size(); ++i) {
671 :
672 : x.direction[i] = direction.at(i).toIDLAngle();
673 :
674 : }
675 :
676 :
677 :
678 :
679 :
680 :
681 :
682 : x.numScrewExists = numScrewExists;
683 :
684 :
685 :
686 :
687 : x.numScrew = numScrew;
688 :
689 :
690 :
691 :
692 :
693 :
694 :
695 :
696 : x.screwNameExists = screwNameExists;
697 :
698 :
699 :
700 : x.screwName.length(screwName.size());
701 : for (unsigned int i = 0; i < screwName.size(); ++i) {
702 :
703 :
704 : x.screwName[i] = CORBA::string_dup(screwName.at(i).c_str());
705 :
706 :
707 : }
708 :
709 :
710 :
711 :
712 :
713 :
714 :
715 : x.screwMotionExists = screwMotionExists;
716 :
717 :
718 :
719 : x.screwMotion.length(screwMotion.size());
720 : for (unsigned int i = 0; i < screwMotion.size(); ++i) {
721 :
722 : x.screwMotion[i] = screwMotion.at(i).toIDLLength();
723 :
724 : }
725 :
726 :
727 :
728 :
729 :
730 :
731 :
732 : x.screwMotionErrorExists = screwMotionErrorExists;
733 :
734 :
735 :
736 : x.screwMotionError.length(screwMotionError.size());
737 : for (unsigned int i = 0; i < screwMotionError.size(); ++i) {
738 :
739 : x.screwMotionError[i] = screwMotionError.at(i).toIDLLength();
740 :
741 : }
742 :
743 :
744 :
745 :
746 :
747 :
748 :
749 : x.gravCorrectionExists = gravCorrectionExists;
750 :
751 :
752 :
753 :
754 : x.gravCorrection = gravCorrection;
755 :
756 :
757 :
758 :
759 :
760 :
761 :
762 :
763 : x.gravOptRangeExists = gravOptRangeExists;
764 :
765 :
766 :
767 : x.gravOptRange.length(gravOptRange.size());
768 : for (unsigned int i = 0; i < gravOptRange.size(); ++i) {
769 :
770 : x.gravOptRange[i] = gravOptRange.at(i).toIDLAngle();
771 :
772 : }
773 :
774 :
775 :
776 :
777 :
778 :
779 :
780 : x.tempCorrectionExists = tempCorrectionExists;
781 :
782 :
783 :
784 :
785 : x.tempCorrection = tempCorrection;
786 :
787 :
788 :
789 :
790 :
791 :
792 :
793 :
794 : x.tempOptRangeExists = tempOptRangeExists;
795 :
796 :
797 :
798 : x.tempOptRange.length(tempOptRange.size());
799 : for (unsigned int i = 0; i < tempOptRange.size(); ++i) {
800 :
801 : x.tempOptRange[i] = tempOptRange.at(i).toIDLTemperature();
802 :
803 : }
804 :
805 :
806 :
807 :
808 :
809 :
810 :
811 :
812 :
813 :
814 :
815 :
816 :
817 : x.calDataId = calDataId.toIDLTag();
818 :
819 :
820 :
821 :
822 :
823 :
824 :
825 :
826 :
827 :
828 : x.calReductionId = calReductionId.toIDLTag();
829 :
830 :
831 :
832 :
833 :
834 :
835 :
836 :
837 :
838 :
839 :
840 : }
841 : #endif
842 :
843 :
844 : #ifndef WITHOUT_ACS
845 : /**
846 : * Fill the values of this row from the IDL struct CalHolographyRowIDL.
847 : * @param x The IDL struct containing the values used to fill this row.
848 : */
849 : void CalHolographyRow::setFromIDL (CalHolographyRowIDL x){
850 : try {
851 : // Fill the values from x.
852 :
853 :
854 :
855 :
856 :
857 :
858 : setAntennaName(string (x.antennaName));
859 :
860 :
861 :
862 :
863 :
864 :
865 :
866 :
867 :
868 : setAntennaMake(x.antennaMake);
869 :
870 :
871 :
872 :
873 :
874 :
875 :
876 :
877 :
878 : setStartValidTime(ArrayTime (x.startValidTime));
879 :
880 :
881 :
882 :
883 :
884 :
885 :
886 :
887 :
888 : setEndValidTime(ArrayTime (x.endValidTime));
889 :
890 :
891 :
892 :
893 :
894 :
895 :
896 :
897 :
898 : setAmbientTemperature(Temperature (x.ambientTemperature));
899 :
900 :
901 :
902 :
903 :
904 :
905 :
906 :
907 :
908 : focusPosition .clear();
909 : for (unsigned int i = 0; i <x.focusPosition.length(); ++i) {
910 :
911 : focusPosition.push_back(Length (x.focusPosition[i]));
912 :
913 : }
914 :
915 :
916 :
917 :
918 :
919 :
920 :
921 :
922 :
923 : frequencyRange .clear();
924 : for (unsigned int i = 0; i <x.frequencyRange.length(); ++i) {
925 :
926 : frequencyRange.push_back(Frequency (x.frequencyRange[i]));
927 :
928 : }
929 :
930 :
931 :
932 :
933 :
934 :
935 :
936 :
937 :
938 : setIlluminationTaper(x.illuminationTaper);
939 :
940 :
941 :
942 :
943 :
944 :
945 :
946 :
947 :
948 : setNumReceptor(x.numReceptor);
949 :
950 :
951 :
952 :
953 :
954 :
955 :
956 :
957 :
958 : polarizationTypes .clear();
959 : for (unsigned int i = 0; i <x.polarizationTypes.length(); ++i) {
960 :
961 : polarizationTypes.push_back(x.polarizationTypes[i]);
962 :
963 : }
964 :
965 :
966 :
967 :
968 :
969 :
970 :
971 :
972 :
973 : setNumPanelModes(x.numPanelModes);
974 :
975 :
976 :
977 :
978 :
979 :
980 :
981 :
982 :
983 : setReceiverBand(x.receiverBand);
984 :
985 :
986 :
987 :
988 :
989 :
990 :
991 :
992 :
993 : setBeamMapUID(EntityRef (x.beamMapUID));
994 :
995 :
996 :
997 :
998 :
999 :
1000 :
1001 :
1002 :
1003 : setRawRMS(Length (x.rawRMS));
1004 :
1005 :
1006 :
1007 :
1008 :
1009 :
1010 :
1011 :
1012 :
1013 : setWeightedRMS(Length (x.weightedRMS));
1014 :
1015 :
1016 :
1017 :
1018 :
1019 :
1020 :
1021 :
1022 :
1023 : setSurfaceMapUID(EntityRef (x.surfaceMapUID));
1024 :
1025 :
1026 :
1027 :
1028 :
1029 :
1030 :
1031 :
1032 :
1033 : direction .clear();
1034 : for (unsigned int i = 0; i <x.direction.length(); ++i) {
1035 :
1036 : direction.push_back(Angle (x.direction[i]));
1037 :
1038 : }
1039 :
1040 :
1041 :
1042 :
1043 :
1044 :
1045 :
1046 : numScrewExists = x.numScrewExists;
1047 : if (x.numScrewExists) {
1048 :
1049 :
1050 :
1051 : setNumScrew(x.numScrew);
1052 :
1053 :
1054 :
1055 : }
1056 :
1057 :
1058 :
1059 :
1060 :
1061 : screwNameExists = x.screwNameExists;
1062 : if (x.screwNameExists) {
1063 :
1064 :
1065 :
1066 : screwName .clear();
1067 : for (unsigned int i = 0; i <x.screwName.length(); ++i) {
1068 :
1069 : screwName.push_back(string (x.screwName[i]));
1070 :
1071 : }
1072 :
1073 :
1074 :
1075 : }
1076 :
1077 :
1078 :
1079 :
1080 :
1081 : screwMotionExists = x.screwMotionExists;
1082 : if (x.screwMotionExists) {
1083 :
1084 :
1085 :
1086 : screwMotion .clear();
1087 : for (unsigned int i = 0; i <x.screwMotion.length(); ++i) {
1088 :
1089 : screwMotion.push_back(Length (x.screwMotion[i]));
1090 :
1091 : }
1092 :
1093 :
1094 :
1095 : }
1096 :
1097 :
1098 :
1099 :
1100 :
1101 : screwMotionErrorExists = x.screwMotionErrorExists;
1102 : if (x.screwMotionErrorExists) {
1103 :
1104 :
1105 :
1106 : screwMotionError .clear();
1107 : for (unsigned int i = 0; i <x.screwMotionError.length(); ++i) {
1108 :
1109 : screwMotionError.push_back(Length (x.screwMotionError[i]));
1110 :
1111 : }
1112 :
1113 :
1114 :
1115 : }
1116 :
1117 :
1118 :
1119 :
1120 :
1121 : gravCorrectionExists = x.gravCorrectionExists;
1122 : if (x.gravCorrectionExists) {
1123 :
1124 :
1125 :
1126 : setGravCorrection(x.gravCorrection);
1127 :
1128 :
1129 :
1130 : }
1131 :
1132 :
1133 :
1134 :
1135 :
1136 : gravOptRangeExists = x.gravOptRangeExists;
1137 : if (x.gravOptRangeExists) {
1138 :
1139 :
1140 :
1141 : gravOptRange .clear();
1142 : for (unsigned int i = 0; i <x.gravOptRange.length(); ++i) {
1143 :
1144 : gravOptRange.push_back(Angle (x.gravOptRange[i]));
1145 :
1146 : }
1147 :
1148 :
1149 :
1150 : }
1151 :
1152 :
1153 :
1154 :
1155 :
1156 : tempCorrectionExists = x.tempCorrectionExists;
1157 : if (x.tempCorrectionExists) {
1158 :
1159 :
1160 :
1161 : setTempCorrection(x.tempCorrection);
1162 :
1163 :
1164 :
1165 : }
1166 :
1167 :
1168 :
1169 :
1170 :
1171 : tempOptRangeExists = x.tempOptRangeExists;
1172 : if (x.tempOptRangeExists) {
1173 :
1174 :
1175 :
1176 : tempOptRange .clear();
1177 : for (unsigned int i = 0; i <x.tempOptRange.length(); ++i) {
1178 :
1179 : tempOptRange.push_back(Temperature (x.tempOptRange[i]));
1180 :
1181 : }
1182 :
1183 :
1184 :
1185 : }
1186 :
1187 :
1188 :
1189 :
1190 :
1191 :
1192 :
1193 :
1194 :
1195 :
1196 : setCalDataId(Tag (x.calDataId));
1197 :
1198 :
1199 :
1200 :
1201 :
1202 :
1203 :
1204 :
1205 :
1206 : setCalReductionId(Tag (x.calReductionId));
1207 :
1208 :
1209 :
1210 :
1211 :
1212 :
1213 :
1214 :
1215 :
1216 :
1217 :
1218 : } catch (const IllegalAccessException &err) {
1219 : throw ConversionException (err.getMessage(),"CalHolography");
1220 : }
1221 : }
1222 : #endif
1223 :
1224 : /**
1225 : * Return this row in the form of an XML string.
1226 : * @return The values of this row as an XML string.
1227 : */
1228 0 : string CalHolographyRow::toXML() const {
1229 0 : string buf;
1230 0 : buf.append("<row> \n");
1231 :
1232 :
1233 :
1234 :
1235 :
1236 :
1237 0 : Parser::toXML(antennaName, "antennaName", buf);
1238 :
1239 :
1240 :
1241 :
1242 :
1243 :
1244 :
1245 0 : buf.append(EnumerationParser::toXML("antennaMake", antennaMake));
1246 :
1247 :
1248 :
1249 :
1250 :
1251 :
1252 :
1253 0 : Parser::toXML(startValidTime, "startValidTime", buf);
1254 :
1255 :
1256 :
1257 :
1258 :
1259 :
1260 :
1261 0 : Parser::toXML(endValidTime, "endValidTime", buf);
1262 :
1263 :
1264 :
1265 :
1266 :
1267 :
1268 :
1269 0 : Parser::toXML(ambientTemperature, "ambientTemperature", buf);
1270 :
1271 :
1272 :
1273 :
1274 :
1275 :
1276 :
1277 0 : Parser::toXML(focusPosition, "focusPosition", buf);
1278 :
1279 :
1280 :
1281 :
1282 :
1283 :
1284 :
1285 0 : Parser::toXML(frequencyRange, "frequencyRange", buf);
1286 :
1287 :
1288 :
1289 :
1290 :
1291 :
1292 :
1293 0 : Parser::toXML(illuminationTaper, "illuminationTaper", buf);
1294 :
1295 :
1296 :
1297 :
1298 :
1299 :
1300 :
1301 0 : Parser::toXML(numReceptor, "numReceptor", buf);
1302 :
1303 :
1304 :
1305 :
1306 :
1307 :
1308 :
1309 0 : buf.append(EnumerationParser::toXML("polarizationTypes", polarizationTypes));
1310 :
1311 :
1312 :
1313 :
1314 :
1315 :
1316 :
1317 0 : Parser::toXML(numPanelModes, "numPanelModes", buf);
1318 :
1319 :
1320 :
1321 :
1322 :
1323 :
1324 :
1325 0 : buf.append(EnumerationParser::toXML("receiverBand", receiverBand));
1326 :
1327 :
1328 :
1329 :
1330 :
1331 :
1332 :
1333 0 : Parser::toXML(beamMapUID, "beamMapUID", buf);
1334 :
1335 :
1336 :
1337 :
1338 :
1339 :
1340 :
1341 0 : Parser::toXML(rawRMS, "rawRMS", buf);
1342 :
1343 :
1344 :
1345 :
1346 :
1347 :
1348 :
1349 0 : Parser::toXML(weightedRMS, "weightedRMS", buf);
1350 :
1351 :
1352 :
1353 :
1354 :
1355 :
1356 :
1357 0 : Parser::toXML(surfaceMapUID, "surfaceMapUID", buf);
1358 :
1359 :
1360 :
1361 :
1362 :
1363 :
1364 :
1365 0 : Parser::toXML(direction, "direction", buf);
1366 :
1367 :
1368 :
1369 :
1370 :
1371 :
1372 0 : if (numScrewExists) {
1373 :
1374 :
1375 0 : Parser::toXML(numScrew, "numScrew", buf);
1376 :
1377 :
1378 : }
1379 :
1380 :
1381 :
1382 :
1383 :
1384 0 : if (screwNameExists) {
1385 :
1386 :
1387 0 : Parser::toXML(screwName, "screwName", buf);
1388 :
1389 :
1390 : }
1391 :
1392 :
1393 :
1394 :
1395 :
1396 0 : if (screwMotionExists) {
1397 :
1398 :
1399 0 : Parser::toXML(screwMotion, "screwMotion", buf);
1400 :
1401 :
1402 : }
1403 :
1404 :
1405 :
1406 :
1407 :
1408 0 : if (screwMotionErrorExists) {
1409 :
1410 :
1411 0 : Parser::toXML(screwMotionError, "screwMotionError", buf);
1412 :
1413 :
1414 : }
1415 :
1416 :
1417 :
1418 :
1419 :
1420 0 : if (gravCorrectionExists) {
1421 :
1422 :
1423 0 : Parser::toXML(gravCorrection, "gravCorrection", buf);
1424 :
1425 :
1426 : }
1427 :
1428 :
1429 :
1430 :
1431 :
1432 0 : if (gravOptRangeExists) {
1433 :
1434 :
1435 0 : Parser::toXML(gravOptRange, "gravOptRange", buf);
1436 :
1437 :
1438 : }
1439 :
1440 :
1441 :
1442 :
1443 :
1444 0 : if (tempCorrectionExists) {
1445 :
1446 :
1447 0 : Parser::toXML(tempCorrection, "tempCorrection", buf);
1448 :
1449 :
1450 : }
1451 :
1452 :
1453 :
1454 :
1455 :
1456 0 : if (tempOptRangeExists) {
1457 :
1458 :
1459 0 : Parser::toXML(tempOptRange, "tempOptRange", buf);
1460 :
1461 :
1462 : }
1463 :
1464 :
1465 :
1466 :
1467 :
1468 :
1469 :
1470 :
1471 :
1472 0 : Parser::toXML(calDataId, "calDataId", buf);
1473 :
1474 :
1475 :
1476 :
1477 :
1478 :
1479 :
1480 0 : Parser::toXML(calReductionId, "calReductionId", buf);
1481 :
1482 :
1483 :
1484 :
1485 :
1486 :
1487 :
1488 :
1489 :
1490 :
1491 :
1492 0 : buf.append("</row>\n");
1493 0 : return buf;
1494 0 : }
1495 :
1496 : /**
1497 : * Fill the values of this row from an XML string
1498 : * that was produced by the toXML() method.
1499 : * @param x The XML string being used to set the values of this row.
1500 : */
1501 0 : void CalHolographyRow::setFromXML (string rowDoc) {
1502 0 : Parser row(rowDoc);
1503 0 : string s = "";
1504 : try {
1505 :
1506 :
1507 :
1508 :
1509 :
1510 0 : setAntennaName(Parser::getString("antennaName","CalHolography",rowDoc));
1511 :
1512 :
1513 :
1514 :
1515 :
1516 :
1517 :
1518 :
1519 0 : antennaMake = EnumerationParser::getAntennaMake("antennaMake","CalHolography",rowDoc);
1520 :
1521 :
1522 :
1523 :
1524 :
1525 :
1526 :
1527 :
1528 0 : setStartValidTime(Parser::getArrayTime("startValidTime","CalHolography",rowDoc));
1529 :
1530 :
1531 :
1532 :
1533 :
1534 :
1535 :
1536 0 : setEndValidTime(Parser::getArrayTime("endValidTime","CalHolography",rowDoc));
1537 :
1538 :
1539 :
1540 :
1541 :
1542 :
1543 :
1544 0 : setAmbientTemperature(Parser::getTemperature("ambientTemperature","CalHolography",rowDoc));
1545 :
1546 :
1547 :
1548 :
1549 :
1550 :
1551 :
1552 :
1553 0 : setFocusPosition(Parser::get1DLength("focusPosition","CalHolography",rowDoc));
1554 :
1555 :
1556 :
1557 :
1558 :
1559 :
1560 :
1561 :
1562 :
1563 0 : setFrequencyRange(Parser::get1DFrequency("frequencyRange","CalHolography",rowDoc));
1564 :
1565 :
1566 :
1567 :
1568 :
1569 :
1570 :
1571 :
1572 0 : setIlluminationTaper(Parser::getDouble("illuminationTaper","CalHolography",rowDoc));
1573 :
1574 :
1575 :
1576 :
1577 :
1578 :
1579 :
1580 0 : setNumReceptor(Parser::getInteger("numReceptor","CalHolography",rowDoc));
1581 :
1582 :
1583 :
1584 :
1585 :
1586 :
1587 :
1588 :
1589 0 : polarizationTypes = EnumerationParser::getPolarizationType1D("polarizationTypes","CalHolography",rowDoc);
1590 :
1591 :
1592 :
1593 :
1594 :
1595 :
1596 :
1597 :
1598 0 : setNumPanelModes(Parser::getInteger("numPanelModes","CalHolography",rowDoc));
1599 :
1600 :
1601 :
1602 :
1603 :
1604 :
1605 :
1606 :
1607 0 : receiverBand = EnumerationParser::getReceiverBand("receiverBand","CalHolography",rowDoc);
1608 :
1609 :
1610 :
1611 :
1612 :
1613 :
1614 :
1615 :
1616 0 : setBeamMapUID(Parser::getEntityRef("beamMapUID","CalHolography",rowDoc));
1617 :
1618 :
1619 :
1620 :
1621 :
1622 :
1623 :
1624 0 : setRawRMS(Parser::getLength("rawRMS","CalHolography",rowDoc));
1625 :
1626 :
1627 :
1628 :
1629 :
1630 :
1631 :
1632 0 : setWeightedRMS(Parser::getLength("weightedRMS","CalHolography",rowDoc));
1633 :
1634 :
1635 :
1636 :
1637 :
1638 :
1639 :
1640 0 : setSurfaceMapUID(Parser::getEntityRef("surfaceMapUID","CalHolography",rowDoc));
1641 :
1642 :
1643 :
1644 :
1645 :
1646 :
1647 :
1648 :
1649 0 : setDirection(Parser::get1DAngle("direction","CalHolography",rowDoc));
1650 :
1651 :
1652 :
1653 :
1654 :
1655 :
1656 :
1657 0 : if (row.isStr("<numScrew>")) {
1658 :
1659 0 : setNumScrew(Parser::getInteger("numScrew","CalHolography",rowDoc));
1660 :
1661 : }
1662 :
1663 :
1664 :
1665 :
1666 :
1667 0 : if (row.isStr("<screwName>")) {
1668 :
1669 :
1670 0 : setScrewName(Parser::get1DString("screwName","CalHolography",rowDoc));
1671 :
1672 :
1673 : }
1674 :
1675 :
1676 :
1677 :
1678 :
1679 0 : if (row.isStr("<screwMotion>")) {
1680 :
1681 :
1682 0 : setScrewMotion(Parser::get1DLength("screwMotion","CalHolography",rowDoc));
1683 :
1684 :
1685 : }
1686 :
1687 :
1688 :
1689 :
1690 :
1691 0 : if (row.isStr("<screwMotionError>")) {
1692 :
1693 :
1694 0 : setScrewMotionError(Parser::get1DLength("screwMotionError","CalHolography",rowDoc));
1695 :
1696 :
1697 : }
1698 :
1699 :
1700 :
1701 :
1702 :
1703 0 : if (row.isStr("<gravCorrection>")) {
1704 :
1705 0 : setGravCorrection(Parser::getBoolean("gravCorrection","CalHolography",rowDoc));
1706 :
1707 : }
1708 :
1709 :
1710 :
1711 :
1712 :
1713 0 : if (row.isStr("<gravOptRange>")) {
1714 :
1715 :
1716 0 : setGravOptRange(Parser::get1DAngle("gravOptRange","CalHolography",rowDoc));
1717 :
1718 :
1719 : }
1720 :
1721 :
1722 :
1723 :
1724 :
1725 0 : if (row.isStr("<tempCorrection>")) {
1726 :
1727 0 : setTempCorrection(Parser::getBoolean("tempCorrection","CalHolography",rowDoc));
1728 :
1729 : }
1730 :
1731 :
1732 :
1733 :
1734 :
1735 0 : if (row.isStr("<tempOptRange>")) {
1736 :
1737 :
1738 0 : setTempOptRange(Parser::get1DTemperature("tempOptRange","CalHolography",rowDoc));
1739 :
1740 :
1741 : }
1742 :
1743 :
1744 :
1745 :
1746 :
1747 :
1748 :
1749 :
1750 :
1751 0 : setCalDataId(Parser::getTag("calDataId","CalData",rowDoc));
1752 :
1753 :
1754 :
1755 :
1756 :
1757 :
1758 :
1759 0 : setCalReductionId(Parser::getTag("calReductionId","CalReduction",rowDoc));
1760 :
1761 :
1762 :
1763 :
1764 :
1765 :
1766 :
1767 :
1768 :
1769 :
1770 0 : } catch (const IllegalAccessException &err) {
1771 0 : throw ConversionException (err.getMessage(),"CalHolography");
1772 0 : }
1773 0 : }
1774 :
1775 0 : void CalHolographyRow::toBin(EndianOSStream& eoss) {
1776 :
1777 :
1778 :
1779 :
1780 :
1781 :
1782 0 : eoss.writeString(antennaName);
1783 :
1784 :
1785 :
1786 :
1787 :
1788 :
1789 :
1790 0 : calDataId.toBin(eoss);
1791 :
1792 :
1793 :
1794 :
1795 :
1796 :
1797 0 : calReductionId.toBin(eoss);
1798 :
1799 :
1800 :
1801 :
1802 :
1803 :
1804 :
1805 0 : eoss.writeString(CAntennaMake::name(antennaMake));
1806 : /* eoss.writeInt(antennaMake); */
1807 :
1808 :
1809 :
1810 :
1811 :
1812 :
1813 :
1814 0 : startValidTime.toBin(eoss);
1815 :
1816 :
1817 :
1818 :
1819 :
1820 :
1821 0 : endValidTime.toBin(eoss);
1822 :
1823 :
1824 :
1825 :
1826 :
1827 :
1828 0 : ambientTemperature.toBin(eoss);
1829 :
1830 :
1831 :
1832 :
1833 :
1834 :
1835 0 : Length::toBin(focusPosition, eoss);
1836 :
1837 :
1838 :
1839 :
1840 :
1841 :
1842 0 : Frequency::toBin(frequencyRange, eoss);
1843 :
1844 :
1845 :
1846 :
1847 :
1848 :
1849 :
1850 0 : eoss.writeDouble(illuminationTaper);
1851 :
1852 :
1853 :
1854 :
1855 :
1856 :
1857 :
1858 :
1859 0 : eoss.writeInt(numReceptor);
1860 :
1861 :
1862 :
1863 :
1864 :
1865 :
1866 :
1867 :
1868 :
1869 0 : eoss.writeInt((int) polarizationTypes.size());
1870 0 : for (unsigned int i = 0; i < polarizationTypes.size(); i++)
1871 :
1872 0 : eoss.writeString(CPolarizationType::name(polarizationTypes.at(i)));
1873 : /* eoss.writeInt(polarizationTypes.at(i)); */
1874 :
1875 :
1876 :
1877 :
1878 :
1879 :
1880 :
1881 :
1882 :
1883 :
1884 0 : eoss.writeInt(numPanelModes);
1885 :
1886 :
1887 :
1888 :
1889 :
1890 :
1891 :
1892 :
1893 0 : eoss.writeString(CReceiverBand::name(receiverBand));
1894 : /* eoss.writeInt(receiverBand); */
1895 :
1896 :
1897 :
1898 :
1899 :
1900 :
1901 :
1902 0 : beamMapUID.toBin(eoss);
1903 :
1904 :
1905 :
1906 :
1907 :
1908 :
1909 0 : rawRMS.toBin(eoss);
1910 :
1911 :
1912 :
1913 :
1914 :
1915 :
1916 0 : weightedRMS.toBin(eoss);
1917 :
1918 :
1919 :
1920 :
1921 :
1922 :
1923 0 : surfaceMapUID.toBin(eoss);
1924 :
1925 :
1926 :
1927 :
1928 :
1929 :
1930 0 : Angle::toBin(direction, eoss);
1931 :
1932 :
1933 :
1934 :
1935 :
1936 :
1937 0 : eoss.writeBoolean(numScrewExists);
1938 0 : if (numScrewExists) {
1939 :
1940 :
1941 :
1942 :
1943 :
1944 0 : eoss.writeInt(numScrew);
1945 :
1946 :
1947 :
1948 :
1949 : }
1950 :
1951 0 : eoss.writeBoolean(screwNameExists);
1952 0 : if (screwNameExists) {
1953 :
1954 :
1955 :
1956 :
1957 :
1958 :
1959 0 : eoss.writeInt((int) screwName.size());
1960 0 : for (unsigned int i = 0; i < screwName.size(); i++)
1961 :
1962 0 : eoss.writeString(screwName.at(i));
1963 :
1964 :
1965 :
1966 :
1967 :
1968 :
1969 : }
1970 :
1971 0 : eoss.writeBoolean(screwMotionExists);
1972 0 : if (screwMotionExists) {
1973 :
1974 :
1975 :
1976 :
1977 0 : Length::toBin(screwMotion, eoss);
1978 :
1979 :
1980 :
1981 : }
1982 :
1983 0 : eoss.writeBoolean(screwMotionErrorExists);
1984 0 : if (screwMotionErrorExists) {
1985 :
1986 :
1987 :
1988 :
1989 0 : Length::toBin(screwMotionError, eoss);
1990 :
1991 :
1992 :
1993 : }
1994 :
1995 0 : eoss.writeBoolean(gravCorrectionExists);
1996 0 : if (gravCorrectionExists) {
1997 :
1998 :
1999 :
2000 :
2001 :
2002 0 : eoss.writeBoolean(gravCorrection);
2003 :
2004 :
2005 :
2006 :
2007 : }
2008 :
2009 0 : eoss.writeBoolean(gravOptRangeExists);
2010 0 : if (gravOptRangeExists) {
2011 :
2012 :
2013 :
2014 :
2015 0 : Angle::toBin(gravOptRange, eoss);
2016 :
2017 :
2018 :
2019 : }
2020 :
2021 0 : eoss.writeBoolean(tempCorrectionExists);
2022 0 : if (tempCorrectionExists) {
2023 :
2024 :
2025 :
2026 :
2027 :
2028 0 : eoss.writeBoolean(tempCorrection);
2029 :
2030 :
2031 :
2032 :
2033 : }
2034 :
2035 0 : eoss.writeBoolean(tempOptRangeExists);
2036 0 : if (tempOptRangeExists) {
2037 :
2038 :
2039 :
2040 :
2041 0 : Temperature::toBin(tempOptRange, eoss);
2042 :
2043 :
2044 :
2045 : }
2046 :
2047 0 : }
2048 :
2049 0 : void CalHolographyRow::antennaNameFromBin(EndianIStream& eis) {
2050 :
2051 :
2052 :
2053 :
2054 :
2055 0 : antennaName = eis.readString();
2056 :
2057 :
2058 :
2059 :
2060 0 : }
2061 0 : void CalHolographyRow::calDataIdFromBin(EndianIStream& eis) {
2062 :
2063 :
2064 :
2065 :
2066 0 : calDataId = Tag::fromBin(eis);
2067 :
2068 :
2069 :
2070 0 : }
2071 0 : void CalHolographyRow::calReductionIdFromBin(EndianIStream& eis) {
2072 :
2073 :
2074 :
2075 :
2076 0 : calReductionId = Tag::fromBin(eis);
2077 :
2078 :
2079 :
2080 0 : }
2081 0 : void CalHolographyRow::antennaMakeFromBin(EndianIStream& eis) {
2082 :
2083 :
2084 :
2085 :
2086 :
2087 0 : antennaMake = CAntennaMake::literal(eis.readString());
2088 :
2089 :
2090 :
2091 :
2092 0 : }
2093 0 : void CalHolographyRow::startValidTimeFromBin(EndianIStream& eis) {
2094 :
2095 :
2096 :
2097 :
2098 0 : startValidTime = ArrayTime::fromBin(eis);
2099 :
2100 :
2101 :
2102 0 : }
2103 0 : void CalHolographyRow::endValidTimeFromBin(EndianIStream& eis) {
2104 :
2105 :
2106 :
2107 :
2108 0 : endValidTime = ArrayTime::fromBin(eis);
2109 :
2110 :
2111 :
2112 0 : }
2113 0 : void CalHolographyRow::ambientTemperatureFromBin(EndianIStream& eis) {
2114 :
2115 :
2116 :
2117 :
2118 0 : ambientTemperature = Temperature::fromBin(eis);
2119 :
2120 :
2121 :
2122 0 : }
2123 0 : void CalHolographyRow::focusPositionFromBin(EndianIStream& eis) {
2124 :
2125 :
2126 :
2127 :
2128 :
2129 :
2130 0 : focusPosition = Length::from1DBin(eis);
2131 :
2132 :
2133 :
2134 :
2135 :
2136 0 : }
2137 0 : void CalHolographyRow::frequencyRangeFromBin(EndianIStream& eis) {
2138 :
2139 :
2140 :
2141 :
2142 :
2143 :
2144 0 : frequencyRange = Frequency::from1DBin(eis);
2145 :
2146 :
2147 :
2148 :
2149 :
2150 0 : }
2151 0 : void CalHolographyRow::illuminationTaperFromBin(EndianIStream& eis) {
2152 :
2153 :
2154 :
2155 :
2156 :
2157 0 : illuminationTaper = eis.readDouble();
2158 :
2159 :
2160 :
2161 :
2162 0 : }
2163 0 : void CalHolographyRow::numReceptorFromBin(EndianIStream& eis) {
2164 :
2165 :
2166 :
2167 :
2168 :
2169 0 : numReceptor = eis.readInt();
2170 :
2171 :
2172 :
2173 :
2174 0 : }
2175 0 : void CalHolographyRow::polarizationTypesFromBin(EndianIStream& eis) {
2176 :
2177 :
2178 :
2179 :
2180 :
2181 :
2182 0 : polarizationTypes.clear();
2183 :
2184 0 : unsigned int polarizationTypesDim1 = eis.readInt();
2185 0 : for (unsigned int i = 0 ; i < polarizationTypesDim1; i++)
2186 :
2187 0 : polarizationTypes.push_back(CPolarizationType::literal(eis.readString()));
2188 :
2189 :
2190 :
2191 :
2192 :
2193 :
2194 0 : }
2195 0 : void CalHolographyRow::numPanelModesFromBin(EndianIStream& eis) {
2196 :
2197 :
2198 :
2199 :
2200 :
2201 0 : numPanelModes = eis.readInt();
2202 :
2203 :
2204 :
2205 :
2206 0 : }
2207 0 : void CalHolographyRow::receiverBandFromBin(EndianIStream& eis) {
2208 :
2209 :
2210 :
2211 :
2212 :
2213 0 : receiverBand = CReceiverBand::literal(eis.readString());
2214 :
2215 :
2216 :
2217 :
2218 0 : }
2219 0 : void CalHolographyRow::beamMapUIDFromBin(EndianIStream& eis) {
2220 :
2221 :
2222 :
2223 :
2224 0 : beamMapUID = EntityRef::fromBin(eis);
2225 :
2226 :
2227 :
2228 0 : }
2229 0 : void CalHolographyRow::rawRMSFromBin(EndianIStream& eis) {
2230 :
2231 :
2232 :
2233 :
2234 0 : rawRMS = Length::fromBin(eis);
2235 :
2236 :
2237 :
2238 0 : }
2239 0 : void CalHolographyRow::weightedRMSFromBin(EndianIStream& eis) {
2240 :
2241 :
2242 :
2243 :
2244 0 : weightedRMS = Length::fromBin(eis);
2245 :
2246 :
2247 :
2248 0 : }
2249 0 : void CalHolographyRow::surfaceMapUIDFromBin(EndianIStream& eis) {
2250 :
2251 :
2252 :
2253 :
2254 0 : surfaceMapUID = EntityRef::fromBin(eis);
2255 :
2256 :
2257 :
2258 0 : }
2259 0 : void CalHolographyRow::directionFromBin(EndianIStream& eis) {
2260 :
2261 :
2262 :
2263 :
2264 :
2265 :
2266 0 : direction = Angle::from1DBin(eis);
2267 :
2268 :
2269 :
2270 :
2271 :
2272 0 : }
2273 :
2274 0 : void CalHolographyRow::numScrewFromBin(EndianIStream& eis) {
2275 :
2276 0 : numScrewExists = eis.readBoolean();
2277 0 : if (numScrewExists) {
2278 :
2279 :
2280 :
2281 :
2282 :
2283 0 : numScrew = eis.readInt();
2284 :
2285 :
2286 :
2287 :
2288 : }
2289 :
2290 0 : }
2291 0 : void CalHolographyRow::screwNameFromBin(EndianIStream& eis) {
2292 :
2293 0 : screwNameExists = eis.readBoolean();
2294 0 : if (screwNameExists) {
2295 :
2296 :
2297 :
2298 :
2299 :
2300 :
2301 0 : screwName.clear();
2302 :
2303 0 : unsigned int screwNameDim1 = eis.readInt();
2304 0 : for (unsigned int i = 0 ; i < screwNameDim1; i++)
2305 :
2306 0 : screwName.push_back(eis.readString());
2307 :
2308 :
2309 :
2310 :
2311 :
2312 :
2313 : }
2314 :
2315 0 : }
2316 0 : void CalHolographyRow::screwMotionFromBin(EndianIStream& eis) {
2317 :
2318 0 : screwMotionExists = eis.readBoolean();
2319 0 : if (screwMotionExists) {
2320 :
2321 :
2322 :
2323 :
2324 :
2325 :
2326 0 : screwMotion = Length::from1DBin(eis);
2327 :
2328 :
2329 :
2330 :
2331 :
2332 : }
2333 :
2334 0 : }
2335 0 : void CalHolographyRow::screwMotionErrorFromBin(EndianIStream& eis) {
2336 :
2337 0 : screwMotionErrorExists = eis.readBoolean();
2338 0 : if (screwMotionErrorExists) {
2339 :
2340 :
2341 :
2342 :
2343 :
2344 :
2345 0 : screwMotionError = Length::from1DBin(eis);
2346 :
2347 :
2348 :
2349 :
2350 :
2351 : }
2352 :
2353 0 : }
2354 0 : void CalHolographyRow::gravCorrectionFromBin(EndianIStream& eis) {
2355 :
2356 0 : gravCorrectionExists = eis.readBoolean();
2357 0 : if (gravCorrectionExists) {
2358 :
2359 :
2360 :
2361 :
2362 :
2363 0 : gravCorrection = eis.readBoolean();
2364 :
2365 :
2366 :
2367 :
2368 : }
2369 :
2370 0 : }
2371 0 : void CalHolographyRow::gravOptRangeFromBin(EndianIStream& eis) {
2372 :
2373 0 : gravOptRangeExists = eis.readBoolean();
2374 0 : if (gravOptRangeExists) {
2375 :
2376 :
2377 :
2378 :
2379 :
2380 :
2381 0 : gravOptRange = Angle::from1DBin(eis);
2382 :
2383 :
2384 :
2385 :
2386 :
2387 : }
2388 :
2389 0 : }
2390 0 : void CalHolographyRow::tempCorrectionFromBin(EndianIStream& eis) {
2391 :
2392 0 : tempCorrectionExists = eis.readBoolean();
2393 0 : if (tempCorrectionExists) {
2394 :
2395 :
2396 :
2397 :
2398 :
2399 0 : tempCorrection = eis.readBoolean();
2400 :
2401 :
2402 :
2403 :
2404 : }
2405 :
2406 0 : }
2407 0 : void CalHolographyRow::tempOptRangeFromBin(EndianIStream& eis) {
2408 :
2409 0 : tempOptRangeExists = eis.readBoolean();
2410 0 : if (tempOptRangeExists) {
2411 :
2412 :
2413 :
2414 :
2415 :
2416 :
2417 0 : tempOptRange = Temperature::from1DBin(eis);
2418 :
2419 :
2420 :
2421 :
2422 :
2423 : }
2424 :
2425 0 : }
2426 :
2427 :
2428 0 : CalHolographyRow* CalHolographyRow::fromBin(EndianIStream& eis, CalHolographyTable& table, const vector<string>& attributesSeq) {
2429 0 : CalHolographyRow* row = new CalHolographyRow(table);
2430 :
2431 0 : map<string, CalHolographyAttributeFromBin>::iterator iter ;
2432 0 : for (unsigned int i = 0; i < attributesSeq.size(); i++) {
2433 0 : iter = row->fromBinMethods.find(attributesSeq.at(i));
2434 0 : if (iter != row->fromBinMethods.end()) {
2435 0 : (row->*(row->fromBinMethods[ attributesSeq.at(i) ] ))(eis);
2436 : }
2437 : else {
2438 0 : BinaryAttributeReaderFunctor* functorP = table.getUnknownAttributeBinaryReader(attributesSeq.at(i));
2439 0 : if (functorP)
2440 0 : (*functorP)(eis);
2441 : else
2442 0 : throw ConversionException("There is not method to read an attribute '"+attributesSeq.at(i)+"'.", "CalHolographyTable");
2443 : }
2444 :
2445 : }
2446 0 : return row;
2447 : }
2448 :
2449 : //
2450 : // A collection of methods to set the value of the attributes from their textual value in the XML representation
2451 : // of one row.
2452 : //
2453 :
2454 : // Convert a string into an String
2455 0 : void CalHolographyRow::antennaNameFromText(const string & s) {
2456 :
2457 :
2458 0 : antennaName = ASDMValuesParser::parse<string>(s);
2459 :
2460 :
2461 0 : }
2462 :
2463 :
2464 : // Convert a string into an Tag
2465 0 : void CalHolographyRow::calDataIdFromText(const string & s) {
2466 :
2467 :
2468 0 : calDataId = ASDMValuesParser::parse<Tag>(s);
2469 :
2470 :
2471 0 : }
2472 :
2473 :
2474 : // Convert a string into an Tag
2475 0 : void CalHolographyRow::calReductionIdFromText(const string & s) {
2476 :
2477 :
2478 0 : calReductionId = ASDMValuesParser::parse<Tag>(s);
2479 :
2480 :
2481 0 : }
2482 :
2483 :
2484 : // Convert a string into an AntennaMake
2485 0 : void CalHolographyRow::antennaMakeFromText(const string & s) {
2486 :
2487 :
2488 0 : antennaMake = ASDMValuesParser::parse<AntennaMakeMod::AntennaMake>(s);
2489 :
2490 :
2491 0 : }
2492 :
2493 :
2494 : // Convert a string into an ArrayTime
2495 0 : void CalHolographyRow::startValidTimeFromText(const string & s) {
2496 :
2497 :
2498 0 : startValidTime = ASDMValuesParser::parse<ArrayTime>(s);
2499 :
2500 :
2501 0 : }
2502 :
2503 :
2504 : // Convert a string into an ArrayTime
2505 0 : void CalHolographyRow::endValidTimeFromText(const string & s) {
2506 :
2507 :
2508 0 : endValidTime = ASDMValuesParser::parse<ArrayTime>(s);
2509 :
2510 :
2511 0 : }
2512 :
2513 :
2514 : // Convert a string into an Temperature
2515 0 : void CalHolographyRow::ambientTemperatureFromText(const string & s) {
2516 :
2517 :
2518 0 : ambientTemperature = ASDMValuesParser::parse<Temperature>(s);
2519 :
2520 :
2521 0 : }
2522 :
2523 :
2524 : // Convert a string into an Length
2525 0 : void CalHolographyRow::focusPositionFromText(const string & s) {
2526 :
2527 :
2528 0 : focusPosition = ASDMValuesParser::parse1D<Length>(s);
2529 :
2530 :
2531 0 : }
2532 :
2533 :
2534 : // Convert a string into an Frequency
2535 0 : void CalHolographyRow::frequencyRangeFromText(const string & s) {
2536 :
2537 :
2538 0 : frequencyRange = ASDMValuesParser::parse1D<Frequency>(s);
2539 :
2540 :
2541 0 : }
2542 :
2543 :
2544 : // Convert a string into an double
2545 0 : void CalHolographyRow::illuminationTaperFromText(const string & s) {
2546 :
2547 :
2548 0 : illuminationTaper = ASDMValuesParser::parse<double>(s);
2549 :
2550 :
2551 0 : }
2552 :
2553 :
2554 : // Convert a string into an int
2555 0 : void CalHolographyRow::numReceptorFromText(const string & s) {
2556 :
2557 :
2558 0 : numReceptor = ASDMValuesParser::parse<int>(s);
2559 :
2560 :
2561 0 : }
2562 :
2563 :
2564 : // Convert a string into an PolarizationType
2565 0 : void CalHolographyRow::polarizationTypesFromText(const string & s) {
2566 :
2567 :
2568 0 : polarizationTypes = ASDMValuesParser::parse1D<PolarizationTypeMod::PolarizationType>(s);
2569 :
2570 :
2571 0 : }
2572 :
2573 :
2574 : // Convert a string into an int
2575 0 : void CalHolographyRow::numPanelModesFromText(const string & s) {
2576 :
2577 :
2578 0 : numPanelModes = ASDMValuesParser::parse<int>(s);
2579 :
2580 :
2581 0 : }
2582 :
2583 :
2584 : // Convert a string into an ReceiverBand
2585 0 : void CalHolographyRow::receiverBandFromText(const string & s) {
2586 :
2587 :
2588 0 : receiverBand = ASDMValuesParser::parse<ReceiverBandMod::ReceiverBand>(s);
2589 :
2590 :
2591 0 : }
2592 :
2593 :
2594 :
2595 : // Convert a string into an Length
2596 0 : void CalHolographyRow::rawRMSFromText(const string & s) {
2597 :
2598 :
2599 0 : rawRMS = ASDMValuesParser::parse<Length>(s);
2600 :
2601 :
2602 0 : }
2603 :
2604 :
2605 : // Convert a string into an Length
2606 0 : void CalHolographyRow::weightedRMSFromText(const string & s) {
2607 :
2608 :
2609 0 : weightedRMS = ASDMValuesParser::parse<Length>(s);
2610 :
2611 :
2612 0 : }
2613 :
2614 :
2615 :
2616 : // Convert a string into an Angle
2617 0 : void CalHolographyRow::directionFromText(const string & s) {
2618 :
2619 :
2620 0 : direction = ASDMValuesParser::parse1D<Angle>(s);
2621 :
2622 :
2623 0 : }
2624 :
2625 :
2626 :
2627 : // Convert a string into an int
2628 0 : void CalHolographyRow::numScrewFromText(const string & s) {
2629 0 : numScrewExists = true;
2630 :
2631 :
2632 0 : numScrew = ASDMValuesParser::parse<int>(s);
2633 :
2634 :
2635 0 : }
2636 :
2637 :
2638 : // Convert a string into an String
2639 0 : void CalHolographyRow::screwNameFromText(const string & s) {
2640 0 : screwNameExists = true;
2641 :
2642 :
2643 0 : screwName = ASDMValuesParser::parse1D<string>(s);
2644 :
2645 :
2646 0 : }
2647 :
2648 :
2649 : // Convert a string into an Length
2650 0 : void CalHolographyRow::screwMotionFromText(const string & s) {
2651 0 : screwMotionExists = true;
2652 :
2653 :
2654 0 : screwMotion = ASDMValuesParser::parse1D<Length>(s);
2655 :
2656 :
2657 0 : }
2658 :
2659 :
2660 : // Convert a string into an Length
2661 0 : void CalHolographyRow::screwMotionErrorFromText(const string & s) {
2662 0 : screwMotionErrorExists = true;
2663 :
2664 :
2665 0 : screwMotionError = ASDMValuesParser::parse1D<Length>(s);
2666 :
2667 :
2668 0 : }
2669 :
2670 :
2671 : // Convert a string into an boolean
2672 0 : void CalHolographyRow::gravCorrectionFromText(const string & s) {
2673 0 : gravCorrectionExists = true;
2674 :
2675 :
2676 0 : gravCorrection = ASDMValuesParser::parse<bool>(s);
2677 :
2678 :
2679 0 : }
2680 :
2681 :
2682 : // Convert a string into an Angle
2683 0 : void CalHolographyRow::gravOptRangeFromText(const string & s) {
2684 0 : gravOptRangeExists = true;
2685 :
2686 :
2687 0 : gravOptRange = ASDMValuesParser::parse1D<Angle>(s);
2688 :
2689 :
2690 0 : }
2691 :
2692 :
2693 : // Convert a string into an boolean
2694 0 : void CalHolographyRow::tempCorrectionFromText(const string & s) {
2695 0 : tempCorrectionExists = true;
2696 :
2697 :
2698 0 : tempCorrection = ASDMValuesParser::parse<bool>(s);
2699 :
2700 :
2701 0 : }
2702 :
2703 :
2704 : // Convert a string into an Temperature
2705 0 : void CalHolographyRow::tempOptRangeFromText(const string & s) {
2706 0 : tempOptRangeExists = true;
2707 :
2708 :
2709 0 : tempOptRange = ASDMValuesParser::parse1D<Temperature>(s);
2710 :
2711 :
2712 0 : }
2713 :
2714 :
2715 :
2716 0 : void CalHolographyRow::fromText(const std::string& attributeName, const std::string& t) {
2717 0 : map<string, CalHolographyAttributeFromText>::iterator iter;
2718 0 : if ((iter = fromTextMethods.find(attributeName)) == fromTextMethods.end())
2719 0 : throw ConversionException("I do not know what to do with '"+attributeName+"' and its content '"+t+"' (while parsing an XML document)", "CalHolographyTable");
2720 0 : (this->*(iter->second))(t);
2721 0 : }
2722 :
2723 : ////////////////////////////////////////////////
2724 : // Intrinsic Table Attributes getters/setters //
2725 : ////////////////////////////////////////////////
2726 :
2727 :
2728 :
2729 :
2730 : /**
2731 : * Get antennaName.
2732 : * @return antennaName as std::string
2733 : */
2734 0 : std::string CalHolographyRow::getAntennaName() const {
2735 :
2736 0 : return antennaName;
2737 : }
2738 :
2739 : /**
2740 : * Set antennaName with the specified std::string.
2741 : * @param antennaName The std::string value to which antennaName is to be set.
2742 :
2743 :
2744 :
2745 : * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
2746 :
2747 : */
2748 0 : void CalHolographyRow::setAntennaName (std::string antennaName) {
2749 :
2750 :
2751 0 : if (hasBeenAdded) {
2752 :
2753 0 : throw IllegalAccessException("antennaName", "CalHolography");
2754 :
2755 : }
2756 :
2757 0 : this->antennaName = antennaName;
2758 :
2759 0 : }
2760 :
2761 :
2762 :
2763 :
2764 :
2765 :
2766 : /**
2767 : * Get antennaMake.
2768 : * @return antennaMake as AntennaMakeMod::AntennaMake
2769 : */
2770 0 : AntennaMakeMod::AntennaMake CalHolographyRow::getAntennaMake() const {
2771 :
2772 0 : return antennaMake;
2773 : }
2774 :
2775 : /**
2776 : * Set antennaMake with the specified AntennaMakeMod::AntennaMake.
2777 : * @param antennaMake The AntennaMakeMod::AntennaMake value to which antennaMake is to be set.
2778 :
2779 :
2780 :
2781 : */
2782 0 : void CalHolographyRow::setAntennaMake (AntennaMakeMod::AntennaMake antennaMake) {
2783 :
2784 :
2785 0 : if (hasBeenAdded) {
2786 :
2787 : }
2788 :
2789 0 : this->antennaMake = antennaMake;
2790 :
2791 0 : }
2792 :
2793 :
2794 :
2795 :
2796 :
2797 :
2798 : /**
2799 : * Get startValidTime.
2800 : * @return startValidTime as ArrayTime
2801 : */
2802 0 : ArrayTime CalHolographyRow::getStartValidTime() const {
2803 :
2804 0 : return startValidTime;
2805 : }
2806 :
2807 : /**
2808 : * Set startValidTime with the specified ArrayTime.
2809 : * @param startValidTime The ArrayTime value to which startValidTime is to be set.
2810 :
2811 :
2812 :
2813 : */
2814 0 : void CalHolographyRow::setStartValidTime (ArrayTime startValidTime) {
2815 :
2816 :
2817 0 : if (hasBeenAdded) {
2818 :
2819 : }
2820 :
2821 0 : this->startValidTime = startValidTime;
2822 :
2823 0 : }
2824 :
2825 :
2826 :
2827 :
2828 :
2829 :
2830 : /**
2831 : * Get endValidTime.
2832 : * @return endValidTime as ArrayTime
2833 : */
2834 0 : ArrayTime CalHolographyRow::getEndValidTime() const {
2835 :
2836 0 : return endValidTime;
2837 : }
2838 :
2839 : /**
2840 : * Set endValidTime with the specified ArrayTime.
2841 : * @param endValidTime The ArrayTime value to which endValidTime is to be set.
2842 :
2843 :
2844 :
2845 : */
2846 0 : void CalHolographyRow::setEndValidTime (ArrayTime endValidTime) {
2847 :
2848 :
2849 0 : if (hasBeenAdded) {
2850 :
2851 : }
2852 :
2853 0 : this->endValidTime = endValidTime;
2854 :
2855 0 : }
2856 :
2857 :
2858 :
2859 :
2860 :
2861 :
2862 : /**
2863 : * Get ambientTemperature.
2864 : * @return ambientTemperature as Temperature
2865 : */
2866 0 : Temperature CalHolographyRow::getAmbientTemperature() const {
2867 :
2868 0 : return ambientTemperature;
2869 : }
2870 :
2871 : /**
2872 : * Set ambientTemperature with the specified Temperature.
2873 : * @param ambientTemperature The Temperature value to which ambientTemperature is to be set.
2874 :
2875 :
2876 :
2877 : */
2878 0 : void CalHolographyRow::setAmbientTemperature (Temperature ambientTemperature) {
2879 :
2880 :
2881 0 : if (hasBeenAdded) {
2882 :
2883 : }
2884 :
2885 0 : this->ambientTemperature = ambientTemperature;
2886 :
2887 0 : }
2888 :
2889 :
2890 :
2891 :
2892 :
2893 :
2894 : /**
2895 : * Get focusPosition.
2896 : * @return focusPosition as std::vector<Length >
2897 : */
2898 0 : std::vector<Length > CalHolographyRow::getFocusPosition() const {
2899 :
2900 0 : return focusPosition;
2901 : }
2902 :
2903 : /**
2904 : * Set focusPosition with the specified std::vector<Length >.
2905 : * @param focusPosition The std::vector<Length > value to which focusPosition is to be set.
2906 :
2907 :
2908 :
2909 : */
2910 0 : void CalHolographyRow::setFocusPosition (std::vector<Length > focusPosition) {
2911 :
2912 :
2913 0 : if (hasBeenAdded) {
2914 :
2915 : }
2916 :
2917 0 : this->focusPosition = focusPosition;
2918 :
2919 0 : }
2920 :
2921 :
2922 :
2923 :
2924 :
2925 :
2926 : /**
2927 : * Get frequencyRange.
2928 : * @return frequencyRange as std::vector<Frequency >
2929 : */
2930 0 : std::vector<Frequency > CalHolographyRow::getFrequencyRange() const {
2931 :
2932 0 : return frequencyRange;
2933 : }
2934 :
2935 : /**
2936 : * Set frequencyRange with the specified std::vector<Frequency >.
2937 : * @param frequencyRange The std::vector<Frequency > value to which frequencyRange is to be set.
2938 :
2939 :
2940 :
2941 : */
2942 0 : void CalHolographyRow::setFrequencyRange (std::vector<Frequency > frequencyRange) {
2943 :
2944 :
2945 0 : if (hasBeenAdded) {
2946 :
2947 : }
2948 :
2949 0 : this->frequencyRange = frequencyRange;
2950 :
2951 0 : }
2952 :
2953 :
2954 :
2955 :
2956 :
2957 :
2958 : /**
2959 : * Get illuminationTaper.
2960 : * @return illuminationTaper as double
2961 : */
2962 0 : double CalHolographyRow::getIlluminationTaper() const {
2963 :
2964 0 : return illuminationTaper;
2965 : }
2966 :
2967 : /**
2968 : * Set illuminationTaper with the specified double.
2969 : * @param illuminationTaper The double value to which illuminationTaper is to be set.
2970 :
2971 :
2972 :
2973 : */
2974 0 : void CalHolographyRow::setIlluminationTaper (double illuminationTaper) {
2975 :
2976 :
2977 0 : if (hasBeenAdded) {
2978 :
2979 : }
2980 :
2981 0 : this->illuminationTaper = illuminationTaper;
2982 :
2983 0 : }
2984 :
2985 :
2986 :
2987 :
2988 :
2989 :
2990 : /**
2991 : * Get numReceptor.
2992 : * @return numReceptor as int
2993 : */
2994 0 : int CalHolographyRow::getNumReceptor() const {
2995 :
2996 0 : return numReceptor;
2997 : }
2998 :
2999 : /**
3000 : * Set numReceptor with the specified int.
3001 : * @param numReceptor The int value to which numReceptor is to be set.
3002 :
3003 :
3004 :
3005 : */
3006 0 : void CalHolographyRow::setNumReceptor (int numReceptor) {
3007 :
3008 :
3009 0 : if (hasBeenAdded) {
3010 :
3011 : }
3012 :
3013 0 : this->numReceptor = numReceptor;
3014 :
3015 0 : }
3016 :
3017 :
3018 :
3019 :
3020 :
3021 :
3022 : /**
3023 : * Get polarizationTypes.
3024 : * @return polarizationTypes as std::vector<PolarizationTypeMod::PolarizationType >
3025 : */
3026 0 : std::vector<PolarizationTypeMod::PolarizationType > CalHolographyRow::getPolarizationTypes() const {
3027 :
3028 0 : return polarizationTypes;
3029 : }
3030 :
3031 : /**
3032 : * Set polarizationTypes with the specified std::vector<PolarizationTypeMod::PolarizationType >.
3033 : * @param polarizationTypes The std::vector<PolarizationTypeMod::PolarizationType > value to which polarizationTypes is to be set.
3034 :
3035 :
3036 :
3037 : */
3038 0 : void CalHolographyRow::setPolarizationTypes (std::vector<PolarizationTypeMod::PolarizationType > polarizationTypes) {
3039 :
3040 :
3041 0 : if (hasBeenAdded) {
3042 :
3043 : }
3044 :
3045 0 : this->polarizationTypes = polarizationTypes;
3046 :
3047 0 : }
3048 :
3049 :
3050 :
3051 :
3052 :
3053 :
3054 : /**
3055 : * Get numPanelModes.
3056 : * @return numPanelModes as int
3057 : */
3058 0 : int CalHolographyRow::getNumPanelModes() const {
3059 :
3060 0 : return numPanelModes;
3061 : }
3062 :
3063 : /**
3064 : * Set numPanelModes with the specified int.
3065 : * @param numPanelModes The int value to which numPanelModes is to be set.
3066 :
3067 :
3068 :
3069 : */
3070 0 : void CalHolographyRow::setNumPanelModes (int numPanelModes) {
3071 :
3072 :
3073 0 : if (hasBeenAdded) {
3074 :
3075 : }
3076 :
3077 0 : this->numPanelModes = numPanelModes;
3078 :
3079 0 : }
3080 :
3081 :
3082 :
3083 :
3084 :
3085 :
3086 : /**
3087 : * Get receiverBand.
3088 : * @return receiverBand as ReceiverBandMod::ReceiverBand
3089 : */
3090 0 : ReceiverBandMod::ReceiverBand CalHolographyRow::getReceiverBand() const {
3091 :
3092 0 : return receiverBand;
3093 : }
3094 :
3095 : /**
3096 : * Set receiverBand with the specified ReceiverBandMod::ReceiverBand.
3097 : * @param receiverBand The ReceiverBandMod::ReceiverBand value to which receiverBand is to be set.
3098 :
3099 :
3100 :
3101 : */
3102 0 : void CalHolographyRow::setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand) {
3103 :
3104 :
3105 0 : if (hasBeenAdded) {
3106 :
3107 : }
3108 :
3109 0 : this->receiverBand = receiverBand;
3110 :
3111 0 : }
3112 :
3113 :
3114 :
3115 :
3116 :
3117 :
3118 : /**
3119 : * Get beamMapUID.
3120 : * @return beamMapUID as EntityRef
3121 : */
3122 0 : EntityRef CalHolographyRow::getBeamMapUID() const {
3123 :
3124 0 : return beamMapUID;
3125 : }
3126 :
3127 : /**
3128 : * Set beamMapUID with the specified EntityRef.
3129 : * @param beamMapUID The EntityRef value to which beamMapUID is to be set.
3130 :
3131 :
3132 :
3133 : */
3134 0 : void CalHolographyRow::setBeamMapUID (EntityRef beamMapUID) {
3135 :
3136 :
3137 0 : if (hasBeenAdded) {
3138 :
3139 : }
3140 :
3141 0 : this->beamMapUID = beamMapUID;
3142 :
3143 0 : }
3144 :
3145 :
3146 :
3147 :
3148 :
3149 :
3150 : /**
3151 : * Get rawRMS.
3152 : * @return rawRMS as Length
3153 : */
3154 0 : Length CalHolographyRow::getRawRMS() const {
3155 :
3156 0 : return rawRMS;
3157 : }
3158 :
3159 : /**
3160 : * Set rawRMS with the specified Length.
3161 : * @param rawRMS The Length value to which rawRMS is to be set.
3162 :
3163 :
3164 :
3165 : */
3166 0 : void CalHolographyRow::setRawRMS (Length rawRMS) {
3167 :
3168 :
3169 0 : if (hasBeenAdded) {
3170 :
3171 : }
3172 :
3173 0 : this->rawRMS = rawRMS;
3174 :
3175 0 : }
3176 :
3177 :
3178 :
3179 :
3180 :
3181 :
3182 : /**
3183 : * Get weightedRMS.
3184 : * @return weightedRMS as Length
3185 : */
3186 0 : Length CalHolographyRow::getWeightedRMS() const {
3187 :
3188 0 : return weightedRMS;
3189 : }
3190 :
3191 : /**
3192 : * Set weightedRMS with the specified Length.
3193 : * @param weightedRMS The Length value to which weightedRMS is to be set.
3194 :
3195 :
3196 :
3197 : */
3198 0 : void CalHolographyRow::setWeightedRMS (Length weightedRMS) {
3199 :
3200 :
3201 0 : if (hasBeenAdded) {
3202 :
3203 : }
3204 :
3205 0 : this->weightedRMS = weightedRMS;
3206 :
3207 0 : }
3208 :
3209 :
3210 :
3211 :
3212 :
3213 :
3214 : /**
3215 : * Get surfaceMapUID.
3216 : * @return surfaceMapUID as EntityRef
3217 : */
3218 0 : EntityRef CalHolographyRow::getSurfaceMapUID() const {
3219 :
3220 0 : return surfaceMapUID;
3221 : }
3222 :
3223 : /**
3224 : * Set surfaceMapUID with the specified EntityRef.
3225 : * @param surfaceMapUID The EntityRef value to which surfaceMapUID is to be set.
3226 :
3227 :
3228 :
3229 : */
3230 0 : void CalHolographyRow::setSurfaceMapUID (EntityRef surfaceMapUID) {
3231 :
3232 :
3233 0 : if (hasBeenAdded) {
3234 :
3235 : }
3236 :
3237 0 : this->surfaceMapUID = surfaceMapUID;
3238 :
3239 0 : }
3240 :
3241 :
3242 :
3243 :
3244 :
3245 :
3246 : /**
3247 : * Get direction.
3248 : * @return direction as std::vector<Angle >
3249 : */
3250 0 : std::vector<Angle > CalHolographyRow::getDirection() const {
3251 :
3252 0 : return direction;
3253 : }
3254 :
3255 : /**
3256 : * Set direction with the specified std::vector<Angle >.
3257 : * @param direction The std::vector<Angle > value to which direction is to be set.
3258 :
3259 :
3260 :
3261 : */
3262 0 : void CalHolographyRow::setDirection (std::vector<Angle > direction) {
3263 :
3264 :
3265 0 : if (hasBeenAdded) {
3266 :
3267 : }
3268 :
3269 0 : this->direction = direction;
3270 :
3271 0 : }
3272 :
3273 :
3274 :
3275 :
3276 : /**
3277 : * The attribute numScrew is optional. Return true if this attribute exists.
3278 : * @return true if and only if the numScrew attribute exists.
3279 : */
3280 0 : bool CalHolographyRow::isNumScrewExists() const {
3281 0 : return numScrewExists;
3282 : }
3283 :
3284 :
3285 :
3286 : /**
3287 : * Get numScrew, which is optional.
3288 : * @return numScrew as int
3289 : * @throw IllegalAccessException If numScrew does not exist.
3290 : */
3291 0 : int CalHolographyRow::getNumScrew() const {
3292 0 : if (!numScrewExists) {
3293 0 : throw IllegalAccessException("numScrew", "CalHolography");
3294 : }
3295 :
3296 0 : return numScrew;
3297 : }
3298 :
3299 : /**
3300 : * Set numScrew with the specified int.
3301 : * @param numScrew The int value to which numScrew is to be set.
3302 :
3303 :
3304 : */
3305 0 : void CalHolographyRow::setNumScrew (int numScrew) {
3306 :
3307 0 : this->numScrew = numScrew;
3308 :
3309 0 : numScrewExists = true;
3310 :
3311 0 : }
3312 :
3313 :
3314 : /**
3315 : * Mark numScrew, which is an optional field, as non-existent.
3316 : */
3317 0 : void CalHolographyRow::clearNumScrew () {
3318 0 : numScrewExists = false;
3319 0 : }
3320 :
3321 :
3322 :
3323 : /**
3324 : * The attribute screwName is optional. Return true if this attribute exists.
3325 : * @return true if and only if the screwName attribute exists.
3326 : */
3327 0 : bool CalHolographyRow::isScrewNameExists() const {
3328 0 : return screwNameExists;
3329 : }
3330 :
3331 :
3332 :
3333 : /**
3334 : * Get screwName, which is optional.
3335 : * @return screwName as std::vector<std::string >
3336 : * @throw IllegalAccessException If screwName does not exist.
3337 : */
3338 0 : std::vector<std::string > CalHolographyRow::getScrewName() const {
3339 0 : if (!screwNameExists) {
3340 0 : throw IllegalAccessException("screwName", "CalHolography");
3341 : }
3342 :
3343 0 : return screwName;
3344 : }
3345 :
3346 : /**
3347 : * Set screwName with the specified std::vector<std::string >.
3348 : * @param screwName The std::vector<std::string > value to which screwName is to be set.
3349 :
3350 :
3351 : */
3352 0 : void CalHolographyRow::setScrewName (std::vector<std::string > screwName) {
3353 :
3354 0 : this->screwName = screwName;
3355 :
3356 0 : screwNameExists = true;
3357 :
3358 0 : }
3359 :
3360 :
3361 : /**
3362 : * Mark screwName, which is an optional field, as non-existent.
3363 : */
3364 0 : void CalHolographyRow::clearScrewName () {
3365 0 : screwNameExists = false;
3366 0 : }
3367 :
3368 :
3369 :
3370 : /**
3371 : * The attribute screwMotion is optional. Return true if this attribute exists.
3372 : * @return true if and only if the screwMotion attribute exists.
3373 : */
3374 0 : bool CalHolographyRow::isScrewMotionExists() const {
3375 0 : return screwMotionExists;
3376 : }
3377 :
3378 :
3379 :
3380 : /**
3381 : * Get screwMotion, which is optional.
3382 : * @return screwMotion as std::vector<Length >
3383 : * @throw IllegalAccessException If screwMotion does not exist.
3384 : */
3385 0 : std::vector<Length > CalHolographyRow::getScrewMotion() const {
3386 0 : if (!screwMotionExists) {
3387 0 : throw IllegalAccessException("screwMotion", "CalHolography");
3388 : }
3389 :
3390 0 : return screwMotion;
3391 : }
3392 :
3393 : /**
3394 : * Set screwMotion with the specified std::vector<Length >.
3395 : * @param screwMotion The std::vector<Length > value to which screwMotion is to be set.
3396 :
3397 :
3398 : */
3399 0 : void CalHolographyRow::setScrewMotion (std::vector<Length > screwMotion) {
3400 :
3401 0 : this->screwMotion = screwMotion;
3402 :
3403 0 : screwMotionExists = true;
3404 :
3405 0 : }
3406 :
3407 :
3408 : /**
3409 : * Mark screwMotion, which is an optional field, as non-existent.
3410 : */
3411 0 : void CalHolographyRow::clearScrewMotion () {
3412 0 : screwMotionExists = false;
3413 0 : }
3414 :
3415 :
3416 :
3417 : /**
3418 : * The attribute screwMotionError is optional. Return true if this attribute exists.
3419 : * @return true if and only if the screwMotionError attribute exists.
3420 : */
3421 0 : bool CalHolographyRow::isScrewMotionErrorExists() const {
3422 0 : return screwMotionErrorExists;
3423 : }
3424 :
3425 :
3426 :
3427 : /**
3428 : * Get screwMotionError, which is optional.
3429 : * @return screwMotionError as std::vector<Length >
3430 : * @throw IllegalAccessException If screwMotionError does not exist.
3431 : */
3432 0 : std::vector<Length > CalHolographyRow::getScrewMotionError() const {
3433 0 : if (!screwMotionErrorExists) {
3434 0 : throw IllegalAccessException("screwMotionError", "CalHolography");
3435 : }
3436 :
3437 0 : return screwMotionError;
3438 : }
3439 :
3440 : /**
3441 : * Set screwMotionError with the specified std::vector<Length >.
3442 : * @param screwMotionError The std::vector<Length > value to which screwMotionError is to be set.
3443 :
3444 :
3445 : */
3446 0 : void CalHolographyRow::setScrewMotionError (std::vector<Length > screwMotionError) {
3447 :
3448 0 : this->screwMotionError = screwMotionError;
3449 :
3450 0 : screwMotionErrorExists = true;
3451 :
3452 0 : }
3453 :
3454 :
3455 : /**
3456 : * Mark screwMotionError, which is an optional field, as non-existent.
3457 : */
3458 0 : void CalHolographyRow::clearScrewMotionError () {
3459 0 : screwMotionErrorExists = false;
3460 0 : }
3461 :
3462 :
3463 :
3464 : /**
3465 : * The attribute gravCorrection is optional. Return true if this attribute exists.
3466 : * @return true if and only if the gravCorrection attribute exists.
3467 : */
3468 0 : bool CalHolographyRow::isGravCorrectionExists() const {
3469 0 : return gravCorrectionExists;
3470 : }
3471 :
3472 :
3473 :
3474 : /**
3475 : * Get gravCorrection, which is optional.
3476 : * @return gravCorrection as bool
3477 : * @throw IllegalAccessException If gravCorrection does not exist.
3478 : */
3479 0 : bool CalHolographyRow::getGravCorrection() const {
3480 0 : if (!gravCorrectionExists) {
3481 0 : throw IllegalAccessException("gravCorrection", "CalHolography");
3482 : }
3483 :
3484 0 : return gravCorrection;
3485 : }
3486 :
3487 : /**
3488 : * Set gravCorrection with the specified bool.
3489 : * @param gravCorrection The bool value to which gravCorrection is to be set.
3490 :
3491 :
3492 : */
3493 0 : void CalHolographyRow::setGravCorrection (bool gravCorrection) {
3494 :
3495 0 : this->gravCorrection = gravCorrection;
3496 :
3497 0 : gravCorrectionExists = true;
3498 :
3499 0 : }
3500 :
3501 :
3502 : /**
3503 : * Mark gravCorrection, which is an optional field, as non-existent.
3504 : */
3505 0 : void CalHolographyRow::clearGravCorrection () {
3506 0 : gravCorrectionExists = false;
3507 0 : }
3508 :
3509 :
3510 :
3511 : /**
3512 : * The attribute gravOptRange is optional. Return true if this attribute exists.
3513 : * @return true if and only if the gravOptRange attribute exists.
3514 : */
3515 0 : bool CalHolographyRow::isGravOptRangeExists() const {
3516 0 : return gravOptRangeExists;
3517 : }
3518 :
3519 :
3520 :
3521 : /**
3522 : * Get gravOptRange, which is optional.
3523 : * @return gravOptRange as std::vector<Angle >
3524 : * @throw IllegalAccessException If gravOptRange does not exist.
3525 : */
3526 0 : std::vector<Angle > CalHolographyRow::getGravOptRange() const {
3527 0 : if (!gravOptRangeExists) {
3528 0 : throw IllegalAccessException("gravOptRange", "CalHolography");
3529 : }
3530 :
3531 0 : return gravOptRange;
3532 : }
3533 :
3534 : /**
3535 : * Set gravOptRange with the specified std::vector<Angle >.
3536 : * @param gravOptRange The std::vector<Angle > value to which gravOptRange is to be set.
3537 :
3538 :
3539 : */
3540 0 : void CalHolographyRow::setGravOptRange (std::vector<Angle > gravOptRange) {
3541 :
3542 0 : this->gravOptRange = gravOptRange;
3543 :
3544 0 : gravOptRangeExists = true;
3545 :
3546 0 : }
3547 :
3548 :
3549 : /**
3550 : * Mark gravOptRange, which is an optional field, as non-existent.
3551 : */
3552 0 : void CalHolographyRow::clearGravOptRange () {
3553 0 : gravOptRangeExists = false;
3554 0 : }
3555 :
3556 :
3557 :
3558 : /**
3559 : * The attribute tempCorrection is optional. Return true if this attribute exists.
3560 : * @return true if and only if the tempCorrection attribute exists.
3561 : */
3562 0 : bool CalHolographyRow::isTempCorrectionExists() const {
3563 0 : return tempCorrectionExists;
3564 : }
3565 :
3566 :
3567 :
3568 : /**
3569 : * Get tempCorrection, which is optional.
3570 : * @return tempCorrection as bool
3571 : * @throw IllegalAccessException If tempCorrection does not exist.
3572 : */
3573 0 : bool CalHolographyRow::getTempCorrection() const {
3574 0 : if (!tempCorrectionExists) {
3575 0 : throw IllegalAccessException("tempCorrection", "CalHolography");
3576 : }
3577 :
3578 0 : return tempCorrection;
3579 : }
3580 :
3581 : /**
3582 : * Set tempCorrection with the specified bool.
3583 : * @param tempCorrection The bool value to which tempCorrection is to be set.
3584 :
3585 :
3586 : */
3587 0 : void CalHolographyRow::setTempCorrection (bool tempCorrection) {
3588 :
3589 0 : this->tempCorrection = tempCorrection;
3590 :
3591 0 : tempCorrectionExists = true;
3592 :
3593 0 : }
3594 :
3595 :
3596 : /**
3597 : * Mark tempCorrection, which is an optional field, as non-existent.
3598 : */
3599 0 : void CalHolographyRow::clearTempCorrection () {
3600 0 : tempCorrectionExists = false;
3601 0 : }
3602 :
3603 :
3604 :
3605 : /**
3606 : * The attribute tempOptRange is optional. Return true if this attribute exists.
3607 : * @return true if and only if the tempOptRange attribute exists.
3608 : */
3609 0 : bool CalHolographyRow::isTempOptRangeExists() const {
3610 0 : return tempOptRangeExists;
3611 : }
3612 :
3613 :
3614 :
3615 : /**
3616 : * Get tempOptRange, which is optional.
3617 : * @return tempOptRange as std::vector<Temperature >
3618 : * @throw IllegalAccessException If tempOptRange does not exist.
3619 : */
3620 0 : std::vector<Temperature > CalHolographyRow::getTempOptRange() const {
3621 0 : if (!tempOptRangeExists) {
3622 0 : throw IllegalAccessException("tempOptRange", "CalHolography");
3623 : }
3624 :
3625 0 : return tempOptRange;
3626 : }
3627 :
3628 : /**
3629 : * Set tempOptRange with the specified std::vector<Temperature >.
3630 : * @param tempOptRange The std::vector<Temperature > value to which tempOptRange is to be set.
3631 :
3632 :
3633 : */
3634 0 : void CalHolographyRow::setTempOptRange (std::vector<Temperature > tempOptRange) {
3635 :
3636 0 : this->tempOptRange = tempOptRange;
3637 :
3638 0 : tempOptRangeExists = true;
3639 :
3640 0 : }
3641 :
3642 :
3643 : /**
3644 : * Mark tempOptRange, which is an optional field, as non-existent.
3645 : */
3646 0 : void CalHolographyRow::clearTempOptRange () {
3647 0 : tempOptRangeExists = false;
3648 0 : }
3649 :
3650 :
3651 :
3652 : ///////////////////////////////////////////////
3653 : // Extrinsic Table Attributes getters/setters//
3654 : ///////////////////////////////////////////////
3655 :
3656 :
3657 :
3658 :
3659 : /**
3660 : * Get calDataId.
3661 : * @return calDataId as Tag
3662 : */
3663 0 : Tag CalHolographyRow::getCalDataId() const {
3664 :
3665 0 : return calDataId;
3666 : }
3667 :
3668 : /**
3669 : * Set calDataId with the specified Tag.
3670 : * @param calDataId The Tag value to which calDataId is to be set.
3671 :
3672 :
3673 :
3674 : * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
3675 :
3676 : */
3677 0 : void CalHolographyRow::setCalDataId (Tag calDataId) {
3678 :
3679 :
3680 0 : if (hasBeenAdded) {
3681 :
3682 0 : throw IllegalAccessException("calDataId", "CalHolography");
3683 :
3684 : }
3685 :
3686 0 : this->calDataId = calDataId;
3687 :
3688 0 : }
3689 :
3690 :
3691 :
3692 :
3693 :
3694 :
3695 : /**
3696 : * Get calReductionId.
3697 : * @return calReductionId as Tag
3698 : */
3699 0 : Tag CalHolographyRow::getCalReductionId() const {
3700 :
3701 0 : return calReductionId;
3702 : }
3703 :
3704 : /**
3705 : * Set calReductionId with the specified Tag.
3706 : * @param calReductionId The Tag value to which calReductionId is to be set.
3707 :
3708 :
3709 :
3710 : * @throw IllegalAccessException If an attempt is made to change this field after is has been added to the table.
3711 :
3712 : */
3713 0 : void CalHolographyRow::setCalReductionId (Tag calReductionId) {
3714 :
3715 :
3716 0 : if (hasBeenAdded) {
3717 :
3718 0 : throw IllegalAccessException("calReductionId", "CalHolography");
3719 :
3720 : }
3721 :
3722 0 : this->calReductionId = calReductionId;
3723 :
3724 0 : }
3725 :
3726 :
3727 :
3728 :
3729 : //////////////////////////////////////
3730 : // Links Attributes getters/setters //
3731 : //////////////////////////////////////
3732 :
3733 :
3734 :
3735 :
3736 :
3737 :
3738 : /**
3739 : * Returns the pointer to the row in the CalReduction table having CalReduction.calReductionId == calReductionId
3740 : * @return a CalReductionRow*
3741 : *
3742 :
3743 : */
3744 0 : CalReductionRow* CalHolographyRow::getCalReductionUsingCalReductionId() {
3745 :
3746 0 : return table.getContainer().getCalReduction().getRowByKey(calReductionId);
3747 : }
3748 :
3749 :
3750 :
3751 :
3752 :
3753 :
3754 :
3755 :
3756 :
3757 : /**
3758 : * Returns the pointer to the row in the CalData table having CalData.calDataId == calDataId
3759 : * @return a CalDataRow*
3760 : *
3761 :
3762 : */
3763 0 : CalDataRow* CalHolographyRow::getCalDataUsingCalDataId() {
3764 :
3765 0 : return table.getContainer().getCalData().getRowByKey(calDataId);
3766 : }
3767 :
3768 :
3769 :
3770 :
3771 :
3772 : /**
3773 : * Create a CalHolographyRow.
3774 : * <p>
3775 : * This constructor is private because only the
3776 : * table can create rows. All rows know the table
3777 : * to which they belong.
3778 : * @param table The table to which this row belongs.
3779 : */
3780 0 : CalHolographyRow::CalHolographyRow (CalHolographyTable &t) : table(t) {
3781 0 : hasBeenAdded = false;
3782 :
3783 :
3784 :
3785 :
3786 :
3787 :
3788 :
3789 :
3790 :
3791 :
3792 :
3793 :
3794 :
3795 :
3796 :
3797 :
3798 :
3799 :
3800 :
3801 :
3802 :
3803 :
3804 :
3805 :
3806 :
3807 :
3808 :
3809 :
3810 :
3811 :
3812 :
3813 :
3814 :
3815 :
3816 :
3817 :
3818 :
3819 0 : numScrewExists = false;
3820 :
3821 :
3822 :
3823 0 : screwNameExists = false;
3824 :
3825 :
3826 :
3827 0 : screwMotionExists = false;
3828 :
3829 :
3830 :
3831 0 : screwMotionErrorExists = false;
3832 :
3833 :
3834 :
3835 0 : gravCorrectionExists = false;
3836 :
3837 :
3838 :
3839 0 : gravOptRangeExists = false;
3840 :
3841 :
3842 :
3843 0 : tempCorrectionExists = false;
3844 :
3845 :
3846 :
3847 0 : tempOptRangeExists = false;
3848 :
3849 :
3850 :
3851 :
3852 :
3853 :
3854 :
3855 :
3856 :
3857 :
3858 :
3859 :
3860 :
3861 : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).
3862 0 : antennaMake = CAntennaMake::from_int(0);
3863 :
3864 :
3865 :
3866 :
3867 :
3868 :
3869 :
3870 :
3871 :
3872 :
3873 :
3874 :
3875 :
3876 :
3877 :
3878 :
3879 :
3880 :
3881 :
3882 :
3883 :
3884 : // This attribute is scalar and has an enumeration type. Let's initialize it to some valid value (the 1st of the enumeration).
3885 0 : receiverBand = CReceiverBand::from_int(0);
3886 :
3887 :
3888 :
3889 :
3890 :
3891 :
3892 :
3893 :
3894 :
3895 :
3896 :
3897 :
3898 :
3899 :
3900 :
3901 :
3902 :
3903 :
3904 :
3905 :
3906 :
3907 :
3908 :
3909 :
3910 :
3911 :
3912 :
3913 :
3914 :
3915 :
3916 0 : fromBinMethods["antennaName"] = &CalHolographyRow::antennaNameFromBin;
3917 0 : fromBinMethods["calDataId"] = &CalHolographyRow::calDataIdFromBin;
3918 0 : fromBinMethods["calReductionId"] = &CalHolographyRow::calReductionIdFromBin;
3919 0 : fromBinMethods["antennaMake"] = &CalHolographyRow::antennaMakeFromBin;
3920 0 : fromBinMethods["startValidTime"] = &CalHolographyRow::startValidTimeFromBin;
3921 0 : fromBinMethods["endValidTime"] = &CalHolographyRow::endValidTimeFromBin;
3922 0 : fromBinMethods["ambientTemperature"] = &CalHolographyRow::ambientTemperatureFromBin;
3923 0 : fromBinMethods["focusPosition"] = &CalHolographyRow::focusPositionFromBin;
3924 0 : fromBinMethods["frequencyRange"] = &CalHolographyRow::frequencyRangeFromBin;
3925 0 : fromBinMethods["illuminationTaper"] = &CalHolographyRow::illuminationTaperFromBin;
3926 0 : fromBinMethods["numReceptor"] = &CalHolographyRow::numReceptorFromBin;
3927 0 : fromBinMethods["polarizationTypes"] = &CalHolographyRow::polarizationTypesFromBin;
3928 0 : fromBinMethods["numPanelModes"] = &CalHolographyRow::numPanelModesFromBin;
3929 0 : fromBinMethods["receiverBand"] = &CalHolographyRow::receiverBandFromBin;
3930 0 : fromBinMethods["beamMapUID"] = &CalHolographyRow::beamMapUIDFromBin;
3931 0 : fromBinMethods["rawRMS"] = &CalHolographyRow::rawRMSFromBin;
3932 0 : fromBinMethods["weightedRMS"] = &CalHolographyRow::weightedRMSFromBin;
3933 0 : fromBinMethods["surfaceMapUID"] = &CalHolographyRow::surfaceMapUIDFromBin;
3934 0 : fromBinMethods["direction"] = &CalHolographyRow::directionFromBin;
3935 :
3936 :
3937 0 : fromBinMethods["numScrew"] = &CalHolographyRow::numScrewFromBin;
3938 0 : fromBinMethods["screwName"] = &CalHolographyRow::screwNameFromBin;
3939 0 : fromBinMethods["screwMotion"] = &CalHolographyRow::screwMotionFromBin;
3940 0 : fromBinMethods["screwMotionError"] = &CalHolographyRow::screwMotionErrorFromBin;
3941 0 : fromBinMethods["gravCorrection"] = &CalHolographyRow::gravCorrectionFromBin;
3942 0 : fromBinMethods["gravOptRange"] = &CalHolographyRow::gravOptRangeFromBin;
3943 0 : fromBinMethods["tempCorrection"] = &CalHolographyRow::tempCorrectionFromBin;
3944 0 : fromBinMethods["tempOptRange"] = &CalHolographyRow::tempOptRangeFromBin;
3945 :
3946 :
3947 :
3948 :
3949 :
3950 0 : fromTextMethods["antennaName"] = &CalHolographyRow::antennaNameFromText;
3951 :
3952 :
3953 :
3954 0 : fromTextMethods["calDataId"] = &CalHolographyRow::calDataIdFromText;
3955 :
3956 :
3957 :
3958 0 : fromTextMethods["calReductionId"] = &CalHolographyRow::calReductionIdFromText;
3959 :
3960 :
3961 :
3962 0 : fromTextMethods["antennaMake"] = &CalHolographyRow::antennaMakeFromText;
3963 :
3964 :
3965 :
3966 0 : fromTextMethods["startValidTime"] = &CalHolographyRow::startValidTimeFromText;
3967 :
3968 :
3969 :
3970 0 : fromTextMethods["endValidTime"] = &CalHolographyRow::endValidTimeFromText;
3971 :
3972 :
3973 :
3974 0 : fromTextMethods["ambientTemperature"] = &CalHolographyRow::ambientTemperatureFromText;
3975 :
3976 :
3977 :
3978 0 : fromTextMethods["focusPosition"] = &CalHolographyRow::focusPositionFromText;
3979 :
3980 :
3981 :
3982 0 : fromTextMethods["frequencyRange"] = &CalHolographyRow::frequencyRangeFromText;
3983 :
3984 :
3985 :
3986 0 : fromTextMethods["illuminationTaper"] = &CalHolographyRow::illuminationTaperFromText;
3987 :
3988 :
3989 :
3990 0 : fromTextMethods["numReceptor"] = &CalHolographyRow::numReceptorFromText;
3991 :
3992 :
3993 :
3994 0 : fromTextMethods["polarizationTypes"] = &CalHolographyRow::polarizationTypesFromText;
3995 :
3996 :
3997 :
3998 0 : fromTextMethods["numPanelModes"] = &CalHolographyRow::numPanelModesFromText;
3999 :
4000 :
4001 :
4002 0 : fromTextMethods["receiverBand"] = &CalHolographyRow::receiverBandFromText;
4003 :
4004 :
4005 :
4006 :
4007 :
4008 0 : fromTextMethods["rawRMS"] = &CalHolographyRow::rawRMSFromText;
4009 :
4010 :
4011 :
4012 0 : fromTextMethods["weightedRMS"] = &CalHolographyRow::weightedRMSFromText;
4013 :
4014 :
4015 :
4016 :
4017 :
4018 0 : fromTextMethods["direction"] = &CalHolographyRow::directionFromText;
4019 :
4020 :
4021 :
4022 :
4023 :
4024 0 : fromTextMethods["numScrew"] = &CalHolographyRow::numScrewFromText;
4025 :
4026 :
4027 :
4028 0 : fromTextMethods["screwName"] = &CalHolographyRow::screwNameFromText;
4029 :
4030 :
4031 :
4032 0 : fromTextMethods["screwMotion"] = &CalHolographyRow::screwMotionFromText;
4033 :
4034 :
4035 :
4036 0 : fromTextMethods["screwMotionError"] = &CalHolographyRow::screwMotionErrorFromText;
4037 :
4038 :
4039 :
4040 0 : fromTextMethods["gravCorrection"] = &CalHolographyRow::gravCorrectionFromText;
4041 :
4042 :
4043 :
4044 0 : fromTextMethods["gravOptRange"] = &CalHolographyRow::gravOptRangeFromText;
4045 :
4046 :
4047 :
4048 0 : fromTextMethods["tempCorrection"] = &CalHolographyRow::tempCorrectionFromText;
4049 :
4050 :
4051 :
4052 0 : fromTextMethods["tempOptRange"] = &CalHolographyRow::tempOptRangeFromText;
4053 :
4054 :
4055 0 : }
4056 :
4057 0 : CalHolographyRow::CalHolographyRow (CalHolographyTable &t, CalHolographyRow *row) : table(t) {
4058 0 : hasBeenAdded = false;
4059 :
4060 0 : if (row == 0) {
4061 :
4062 :
4063 :
4064 :
4065 :
4066 :
4067 :
4068 :
4069 :
4070 :
4071 :
4072 :
4073 :
4074 :
4075 :
4076 :
4077 :
4078 :
4079 :
4080 :
4081 :
4082 :
4083 :
4084 :
4085 :
4086 :
4087 :
4088 :
4089 :
4090 :
4091 :
4092 :
4093 :
4094 :
4095 :
4096 :
4097 :
4098 0 : numScrewExists = false;
4099 :
4100 :
4101 :
4102 0 : screwNameExists = false;
4103 :
4104 :
4105 :
4106 0 : screwMotionExists = false;
4107 :
4108 :
4109 :
4110 0 : screwMotionErrorExists = false;
4111 :
4112 :
4113 :
4114 0 : gravCorrectionExists = false;
4115 :
4116 :
4117 :
4118 0 : gravOptRangeExists = false;
4119 :
4120 :
4121 :
4122 0 : tempCorrectionExists = false;
4123 :
4124 :
4125 :
4126 0 : tempOptRangeExists = false;
4127 :
4128 :
4129 :
4130 :
4131 :
4132 :
4133 :
4134 : }
4135 : else {
4136 :
4137 :
4138 0 : antennaName = row->antennaName;
4139 :
4140 0 : calDataId = row->calDataId;
4141 :
4142 0 : calReductionId = row->calReductionId;
4143 :
4144 :
4145 :
4146 :
4147 0 : antennaMake = row->antennaMake;
4148 :
4149 0 : startValidTime = row->startValidTime;
4150 :
4151 0 : endValidTime = row->endValidTime;
4152 :
4153 0 : ambientTemperature = row->ambientTemperature;
4154 :
4155 0 : focusPosition = row->focusPosition;
4156 :
4157 0 : frequencyRange = row->frequencyRange;
4158 :
4159 0 : illuminationTaper = row->illuminationTaper;
4160 :
4161 0 : numReceptor = row->numReceptor;
4162 :
4163 0 : polarizationTypes = row->polarizationTypes;
4164 :
4165 0 : numPanelModes = row->numPanelModes;
4166 :
4167 0 : receiverBand = row->receiverBand;
4168 :
4169 0 : beamMapUID = row->beamMapUID;
4170 :
4171 0 : rawRMS = row->rawRMS;
4172 :
4173 0 : weightedRMS = row->weightedRMS;
4174 :
4175 0 : surfaceMapUID = row->surfaceMapUID;
4176 :
4177 0 : direction = row->direction;
4178 :
4179 :
4180 :
4181 :
4182 0 : if (row->numScrewExists) {
4183 0 : numScrew = row->numScrew;
4184 0 : numScrewExists = true;
4185 : }
4186 : else
4187 0 : numScrewExists = false;
4188 :
4189 0 : if (row->screwNameExists) {
4190 0 : screwName = row->screwName;
4191 0 : screwNameExists = true;
4192 : }
4193 : else
4194 0 : screwNameExists = false;
4195 :
4196 0 : if (row->screwMotionExists) {
4197 0 : screwMotion = row->screwMotion;
4198 0 : screwMotionExists = true;
4199 : }
4200 : else
4201 0 : screwMotionExists = false;
4202 :
4203 0 : if (row->screwMotionErrorExists) {
4204 0 : screwMotionError = row->screwMotionError;
4205 0 : screwMotionErrorExists = true;
4206 : }
4207 : else
4208 0 : screwMotionErrorExists = false;
4209 :
4210 0 : if (row->gravCorrectionExists) {
4211 0 : gravCorrection = row->gravCorrection;
4212 0 : gravCorrectionExists = true;
4213 : }
4214 : else
4215 0 : gravCorrectionExists = false;
4216 :
4217 0 : if (row->gravOptRangeExists) {
4218 0 : gravOptRange = row->gravOptRange;
4219 0 : gravOptRangeExists = true;
4220 : }
4221 : else
4222 0 : gravOptRangeExists = false;
4223 :
4224 0 : if (row->tempCorrectionExists) {
4225 0 : tempCorrection = row->tempCorrection;
4226 0 : tempCorrectionExists = true;
4227 : }
4228 : else
4229 0 : tempCorrectionExists = false;
4230 :
4231 0 : if (row->tempOptRangeExists) {
4232 0 : tempOptRange = row->tempOptRange;
4233 0 : tempOptRangeExists = true;
4234 : }
4235 : else
4236 0 : tempOptRangeExists = false;
4237 :
4238 : }
4239 :
4240 0 : fromBinMethods["antennaName"] = &CalHolographyRow::antennaNameFromBin;
4241 0 : fromBinMethods["calDataId"] = &CalHolographyRow::calDataIdFromBin;
4242 0 : fromBinMethods["calReductionId"] = &CalHolographyRow::calReductionIdFromBin;
4243 0 : fromBinMethods["antennaMake"] = &CalHolographyRow::antennaMakeFromBin;
4244 0 : fromBinMethods["startValidTime"] = &CalHolographyRow::startValidTimeFromBin;
4245 0 : fromBinMethods["endValidTime"] = &CalHolographyRow::endValidTimeFromBin;
4246 0 : fromBinMethods["ambientTemperature"] = &CalHolographyRow::ambientTemperatureFromBin;
4247 0 : fromBinMethods["focusPosition"] = &CalHolographyRow::focusPositionFromBin;
4248 0 : fromBinMethods["frequencyRange"] = &CalHolographyRow::frequencyRangeFromBin;
4249 0 : fromBinMethods["illuminationTaper"] = &CalHolographyRow::illuminationTaperFromBin;
4250 0 : fromBinMethods["numReceptor"] = &CalHolographyRow::numReceptorFromBin;
4251 0 : fromBinMethods["polarizationTypes"] = &CalHolographyRow::polarizationTypesFromBin;
4252 0 : fromBinMethods["numPanelModes"] = &CalHolographyRow::numPanelModesFromBin;
4253 0 : fromBinMethods["receiverBand"] = &CalHolographyRow::receiverBandFromBin;
4254 0 : fromBinMethods["beamMapUID"] = &CalHolographyRow::beamMapUIDFromBin;
4255 0 : fromBinMethods["rawRMS"] = &CalHolographyRow::rawRMSFromBin;
4256 0 : fromBinMethods["weightedRMS"] = &CalHolographyRow::weightedRMSFromBin;
4257 0 : fromBinMethods["surfaceMapUID"] = &CalHolographyRow::surfaceMapUIDFromBin;
4258 0 : fromBinMethods["direction"] = &CalHolographyRow::directionFromBin;
4259 :
4260 :
4261 0 : fromBinMethods["numScrew"] = &CalHolographyRow::numScrewFromBin;
4262 0 : fromBinMethods["screwName"] = &CalHolographyRow::screwNameFromBin;
4263 0 : fromBinMethods["screwMotion"] = &CalHolographyRow::screwMotionFromBin;
4264 0 : fromBinMethods["screwMotionError"] = &CalHolographyRow::screwMotionErrorFromBin;
4265 0 : fromBinMethods["gravCorrection"] = &CalHolographyRow::gravCorrectionFromBin;
4266 0 : fromBinMethods["gravOptRange"] = &CalHolographyRow::gravOptRangeFromBin;
4267 0 : fromBinMethods["tempCorrection"] = &CalHolographyRow::tempCorrectionFromBin;
4268 0 : fromBinMethods["tempOptRange"] = &CalHolographyRow::tempOptRangeFromBin;
4269 :
4270 0 : }
4271 :
4272 :
4273 0 : bool CalHolographyRow::compareNoAutoInc(std::string antennaName, Tag calDataId, Tag calReductionId, AntennaMakeMod::AntennaMake antennaMake, ArrayTime startValidTime, ArrayTime endValidTime, Temperature ambientTemperature, std::vector<Length > focusPosition, std::vector<Frequency > frequencyRange, double illuminationTaper, int numReceptor, std::vector<PolarizationTypeMod::PolarizationType > polarizationTypes, int numPanelModes, ReceiverBandMod::ReceiverBand receiverBand, EntityRef beamMapUID, Length rawRMS, Length weightedRMS, EntityRef surfaceMapUID, std::vector<Angle > direction) {
4274 : bool result;
4275 0 : result = true;
4276 :
4277 :
4278 :
4279 0 : result = result && (this->antennaName == antennaName);
4280 :
4281 0 : if (!result) return false;
4282 :
4283 :
4284 :
4285 :
4286 0 : result = result && (this->calDataId == calDataId);
4287 :
4288 0 : if (!result) return false;
4289 :
4290 :
4291 :
4292 :
4293 0 : result = result && (this->calReductionId == calReductionId);
4294 :
4295 0 : if (!result) return false;
4296 :
4297 :
4298 :
4299 :
4300 0 : result = result && (this->antennaMake == antennaMake);
4301 :
4302 0 : if (!result) return false;
4303 :
4304 :
4305 :
4306 :
4307 0 : result = result && (this->startValidTime == startValidTime);
4308 :
4309 0 : if (!result) return false;
4310 :
4311 :
4312 :
4313 :
4314 0 : result = result && (this->endValidTime == endValidTime);
4315 :
4316 0 : if (!result) return false;
4317 :
4318 :
4319 :
4320 :
4321 0 : result = result && (this->ambientTemperature == ambientTemperature);
4322 :
4323 0 : if (!result) return false;
4324 :
4325 :
4326 :
4327 :
4328 0 : result = result && (this->focusPosition == focusPosition);
4329 :
4330 0 : if (!result) return false;
4331 :
4332 :
4333 :
4334 :
4335 0 : result = result && (this->frequencyRange == frequencyRange);
4336 :
4337 0 : if (!result) return false;
4338 :
4339 :
4340 :
4341 :
4342 0 : result = result && (this->illuminationTaper == illuminationTaper);
4343 :
4344 0 : if (!result) return false;
4345 :
4346 :
4347 :
4348 :
4349 0 : result = result && (this->numReceptor == numReceptor);
4350 :
4351 0 : if (!result) return false;
4352 :
4353 :
4354 :
4355 :
4356 0 : result = result && (this->polarizationTypes == polarizationTypes);
4357 :
4358 0 : if (!result) return false;
4359 :
4360 :
4361 :
4362 :
4363 0 : result = result && (this->numPanelModes == numPanelModes);
4364 :
4365 0 : if (!result) return false;
4366 :
4367 :
4368 :
4369 :
4370 0 : result = result && (this->receiverBand == receiverBand);
4371 :
4372 0 : if (!result) return false;
4373 :
4374 :
4375 :
4376 :
4377 0 : result = result && (this->beamMapUID == beamMapUID);
4378 :
4379 0 : if (!result) return false;
4380 :
4381 :
4382 :
4383 :
4384 0 : result = result && (this->rawRMS == rawRMS);
4385 :
4386 0 : if (!result) return false;
4387 :
4388 :
4389 :
4390 :
4391 0 : result = result && (this->weightedRMS == weightedRMS);
4392 :
4393 0 : if (!result) return false;
4394 :
4395 :
4396 :
4397 :
4398 0 : result = result && (this->surfaceMapUID == surfaceMapUID);
4399 :
4400 0 : if (!result) return false;
4401 :
4402 :
4403 :
4404 :
4405 0 : result = result && (this->direction == direction);
4406 :
4407 0 : if (!result) return false;
4408 :
4409 :
4410 0 : return result;
4411 : }
4412 :
4413 :
4414 :
4415 0 : bool CalHolographyRow::compareRequiredValue(AntennaMakeMod::AntennaMake antennaMake, ArrayTime startValidTime, ArrayTime endValidTime, Temperature ambientTemperature, std::vector<Length > focusPosition, std::vector<Frequency > frequencyRange, double illuminationTaper, int numReceptor, std::vector<PolarizationTypeMod::PolarizationType > polarizationTypes, int numPanelModes, ReceiverBandMod::ReceiverBand receiverBand, EntityRef beamMapUID, Length rawRMS, Length weightedRMS, EntityRef surfaceMapUID, std::vector<Angle > direction) {
4416 : bool result;
4417 0 : result = true;
4418 :
4419 :
4420 0 : if (!(this->antennaMake == antennaMake)) return false;
4421 :
4422 :
4423 :
4424 0 : if (!(this->startValidTime == startValidTime)) return false;
4425 :
4426 :
4427 :
4428 0 : if (!(this->endValidTime == endValidTime)) return false;
4429 :
4430 :
4431 :
4432 0 : if (!(this->ambientTemperature == ambientTemperature)) return false;
4433 :
4434 :
4435 :
4436 0 : if (!(this->focusPosition == focusPosition)) return false;
4437 :
4438 :
4439 :
4440 0 : if (!(this->frequencyRange == frequencyRange)) return false;
4441 :
4442 :
4443 :
4444 0 : if (!(this->illuminationTaper == illuminationTaper)) return false;
4445 :
4446 :
4447 :
4448 0 : if (!(this->numReceptor == numReceptor)) return false;
4449 :
4450 :
4451 :
4452 0 : if (!(this->polarizationTypes == polarizationTypes)) return false;
4453 :
4454 :
4455 :
4456 0 : if (!(this->numPanelModes == numPanelModes)) return false;
4457 :
4458 :
4459 :
4460 0 : if (!(this->receiverBand == receiverBand)) return false;
4461 :
4462 :
4463 :
4464 0 : if (!(this->beamMapUID == beamMapUID)) return false;
4465 :
4466 :
4467 :
4468 0 : if (!(this->rawRMS == rawRMS)) return false;
4469 :
4470 :
4471 :
4472 0 : if (!(this->weightedRMS == weightedRMS)) return false;
4473 :
4474 :
4475 :
4476 0 : if (!(this->surfaceMapUID == surfaceMapUID)) return false;
4477 :
4478 :
4479 :
4480 0 : if (!(this->direction == direction)) return false;
4481 :
4482 :
4483 0 : return result;
4484 : }
4485 :
4486 :
4487 : /**
4488 : * Return true if all required attributes of the value part are equal to their homologues
4489 : * in x and false otherwise.
4490 : *
4491 :
4492 : * @param x a pointer on the CalHolographyRow whose required attributes of the value part
4493 :
4494 : * will be compared with those of this.
4495 : * @return a boolean.
4496 : */
4497 0 : bool CalHolographyRow::equalByRequiredValue(CalHolographyRow* x ) {
4498 :
4499 :
4500 0 : if (this->antennaMake != x->antennaMake) return false;
4501 :
4502 0 : if (this->startValidTime != x->startValidTime) return false;
4503 :
4504 0 : if (this->endValidTime != x->endValidTime) return false;
4505 :
4506 0 : if (this->ambientTemperature != x->ambientTemperature) return false;
4507 :
4508 0 : if (this->focusPosition != x->focusPosition) return false;
4509 :
4510 0 : if (this->frequencyRange != x->frequencyRange) return false;
4511 :
4512 0 : if (this->illuminationTaper != x->illuminationTaper) return false;
4513 :
4514 0 : if (this->numReceptor != x->numReceptor) return false;
4515 :
4516 0 : if (this->polarizationTypes != x->polarizationTypes) return false;
4517 :
4518 0 : if (this->numPanelModes != x->numPanelModes) return false;
4519 :
4520 0 : if (this->receiverBand != x->receiverBand) return false;
4521 :
4522 0 : if (this->beamMapUID != x->beamMapUID) return false;
4523 :
4524 0 : if (this->rawRMS != x->rawRMS) return false;
4525 :
4526 0 : if (this->weightedRMS != x->weightedRMS) return false;
4527 :
4528 0 : if (this->surfaceMapUID != x->surfaceMapUID) return false;
4529 :
4530 0 : if (this->direction != x->direction) return false;
4531 :
4532 :
4533 0 : return true;
4534 : }
4535 :
4536 : /*
4537 : map<string, CalHolographyAttributeFromBin> CalHolographyRow::initFromBinMethods() {
4538 : map<string, CalHolographyAttributeFromBin> result;
4539 :
4540 : result["antennaName"] = &CalHolographyRow::antennaNameFromBin;
4541 : result["calDataId"] = &CalHolographyRow::calDataIdFromBin;
4542 : result["calReductionId"] = &CalHolographyRow::calReductionIdFromBin;
4543 : result["antennaMake"] = &CalHolographyRow::antennaMakeFromBin;
4544 : result["startValidTime"] = &CalHolographyRow::startValidTimeFromBin;
4545 : result["endValidTime"] = &CalHolographyRow::endValidTimeFromBin;
4546 : result["ambientTemperature"] = &CalHolographyRow::ambientTemperatureFromBin;
4547 : result["focusPosition"] = &CalHolographyRow::focusPositionFromBin;
4548 : result["frequencyRange"] = &CalHolographyRow::frequencyRangeFromBin;
4549 : result["illuminationTaper"] = &CalHolographyRow::illuminationTaperFromBin;
4550 : result["numReceptor"] = &CalHolographyRow::numReceptorFromBin;
4551 : result["polarizationTypes"] = &CalHolographyRow::polarizationTypesFromBin;
4552 : result["numPanelModes"] = &CalHolographyRow::numPanelModesFromBin;
4553 : result["receiverBand"] = &CalHolographyRow::receiverBandFromBin;
4554 : result["beamMapUID"] = &CalHolographyRow::beamMapUIDFromBin;
4555 : result["rawRMS"] = &CalHolographyRow::rawRMSFromBin;
4556 : result["weightedRMS"] = &CalHolographyRow::weightedRMSFromBin;
4557 : result["surfaceMapUID"] = &CalHolographyRow::surfaceMapUIDFromBin;
4558 : result["direction"] = &CalHolographyRow::directionFromBin;
4559 :
4560 :
4561 : result["numScrew"] = &CalHolographyRow::numScrewFromBin;
4562 : result["screwName"] = &CalHolographyRow::screwNameFromBin;
4563 : result["screwMotion"] = &CalHolographyRow::screwMotionFromBin;
4564 : result["screwMotionError"] = &CalHolographyRow::screwMotionErrorFromBin;
4565 : result["gravCorrection"] = &CalHolographyRow::gravCorrectionFromBin;
4566 : result["gravOptRange"] = &CalHolographyRow::gravOptRangeFromBin;
4567 : result["tempCorrection"] = &CalHolographyRow::tempCorrectionFromBin;
4568 : result["tempOptRange"] = &CalHolographyRow::tempOptRangeFromBin;
4569 :
4570 :
4571 : return result;
4572 : }
4573 : */
4574 : } // End namespace asdm
4575 :
|