casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GainTrackingRow.h
Go to the documentation of this file.
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 GainTrackingRow.h
32  */
33 
34 #ifndef GainTrackingRow_CLASS
35 #define GainTrackingRow_CLASS
36 
37 #include <vector>
38 #include <string>
39 #include <set>
40 
41 #ifndef WITHOUT_ACS
42 #include <asdmIDLC.h>
43 #endif
44 
45 
46 
47 
48 
49 
50 
52 
53 
54 
55 #include <alma/ASDM/Tag.h>
56 
57 
58 
60 
61 
62 
63 
64 
65 
66 
67 
68 
69 
70 
71 
73 
74 
75 
76 
77 
78 
79 
80 
81 
82 
83 
84 
86 #include <alma/ASDM/NoSuchRow.h>
88 
90 //#include <alma/ASDM/TableStreamReader.h>
91 
92 /*\file GainTracking.h
93  \brief Generated from model's revision "-1", branch ""
94 */
95 
96 namespace asdm {
97 
98 //class asdm::GainTrackingTable;
99 
100 
101 // class asdm::AntennaRow;
102 class AntennaRow;
103 
104 // class asdm::SpectralWindowRow;
105 class SpectralWindowRow;
106 
107 // class asdm::FeedRow;
108 class FeedRow;
109 
110 
111 class GainTrackingRow;
113 typedef void (GainTrackingRow::*GainTrackingAttributeFromText) (const std::string& s);
114 
124 //friend class asdm::TableStreamReader<GainTrackingTable, GainTrackingRow>;
125 
126 public:
127 
128  virtual ~GainTrackingRow();
129 
133  GainTrackingTable &getTable() const;
134 
139  bool isAdded() const;
140 
142  // Intrinsic Table Attributes //
144 
145 
146  // ===> Attribute timeInterval
147 
148 
149 
150 
151 
156  ArrayTimeInterval getTimeInterval() const;
157 
158 
159 
160 
170  void setTimeInterval (ArrayTimeInterval timeInterval);
171 
172 
173 
174 
175 
176 
177 
178  // ===> Attribute numReceptor
179 
180 
181 
182 
183 
188  int getNumReceptor() const;
189 
190 
191 
192 
200  void setNumReceptor (int numReceptor);
201 
202 
203 
204 
205 
206 
207 
208  // ===> Attribute attenuator
209 
210 
211 
212 
213 
218  std::vector<float > getAttenuator() const;
219 
220 
221 
222 
230  void setAttenuator (std::vector<float > attenuator);
231 
232 
233 
234 
235 
236 
237 
238  // ===> Attribute polarizationType
239 
240 
241 
242 
243 
248  std::vector<PolarizationTypeMod::PolarizationType > getPolarizationType() const;
249 
250 
251 
252 
260  void setPolarizationType (std::vector<PolarizationTypeMod::PolarizationType > polarizationType);
261 
262 
263 
264 
265 
266 
267 
268  // ===> Attribute samplingLevel, which is optional
269 
270 
271 
276  bool isSamplingLevelExists() const;
277 
278 
279 
285  float getSamplingLevel() const;
286 
287 
288 
289 
296  void setSamplingLevel (float samplingLevel);
297 
298 
299 
300 
304  void clearSamplingLevel ();
305 
306 
307 
308 
309  // ===> Attribute numAttFreq, which is optional
310 
311 
312 
317  bool isNumAttFreqExists() const;
318 
319 
320 
326  int getNumAttFreq() const;
327 
328 
329 
330 
337  void setNumAttFreq (int numAttFreq);
338 
339 
340 
341 
345  void clearNumAttFreq ();
346 
347 
348 
349 
350  // ===> Attribute attFreq, which is optional
351 
352 
353 
358  bool isAttFreqExists() const;
359 
360 
361 
367  std::vector<double > getAttFreq() const;
368 
369 
370 
371 
378  void setAttFreq (std::vector<double > attFreq);
379 
380 
381 
382 
386  void clearAttFreq ();
387 
388 
389 
390 
391  // ===> Attribute attSpectrum, which is optional
392 
393 
394 
399  bool isAttSpectrumExists() const;
400 
401 
402 
408  std::vector<Complex > getAttSpectrum() const;
409 
410 
411 
412 
419  void setAttSpectrum (std::vector<Complex > attSpectrum);
420 
421 
422 
423 
427  void clearAttSpectrum ();
428 
429 
430 
432  // Extrinsic Table Attributes //
434 
435 
436  // ===> Attribute antennaId
437 
438 
439 
440 
441 
446  Tag getAntennaId() const;
447 
448 
449 
450 
460  void setAntennaId (Tag antennaId);
461 
462 
463 
464 
465 
466 
467 
468  // ===> Attribute feedId
469 
470 
471 
472 
473 
478  int getFeedId() const;
479 
480 
481 
482 
492  void setFeedId (int feedId);
493 
494 
495 
496 
497 
498 
499 
500  // ===> Attribute spectralWindowId
501 
502 
503 
504 
505 
510  Tag getSpectralWindowId() const;
511 
512 
513 
514 
525 
526 
527 
528 
529 
530 
532  // Links //
534 
535 
536 
537 
538 
546 
547 
548 
549 
550 
551 
552 
553 
561 
562 
563 
564 
565 
566 
567 
568 
569  // ===> Slice link from a row of GainTracking table to a collection of row of Feed table.
570 
576  std::vector <FeedRow *> getFeeds();
577 
578 
579 
580 
581 
582 
583 
584 
604  bool compareNoAutoInc(Tag antennaId, Tag spectralWindowId, ArrayTimeInterval timeInterval, int feedId, int numReceptor, std::vector<float > attenuator, std::vector<PolarizationTypeMod::PolarizationType > polarizationType);
605 
606 
607 
608 
620  bool compareRequiredValue(int numReceptor, std::vector<float > attenuator, std::vector<PolarizationTypeMod::PolarizationType > polarizationType);
621 
622 
632 
633 #ifndef WITHOUT_ACS
634 
638  asdmIDL::GainTrackingRowIDL *toIDL() const;
639 
647  void toIDL(asdmIDL::GainTrackingRowIDL& x) const;
648 #endif
649 
650 #ifndef WITHOUT_ACS
651 
656  void setFromIDL (asdmIDL::GainTrackingRowIDL x) ;
657 #endif
658 
663  std::string toXML() const;
664 
671  void setFromXML (std::string rowDoc) ;
672 
675  // binary-deserialization material from an EndianIStream //
677 
678  std::map<std::string, GainTrackingAttributeFromBin> fromBinMethods;
679 void antennaIdFromBin( EndianIStream& eis);
682 void feedIdFromBin( EndianIStream& eis);
684 void attenuatorFromBin( EndianIStream& eis);
686 
688 void numAttFreqFromBin( EndianIStream& eis);
689 void attFreqFromBin( EndianIStream& eis);
691 
692 
700  static GainTrackingRow* fromBin(EndianIStream& eis, GainTrackingTable& table, const std::vector<std::string>& attributesSeq);
701 
708  void fromText(const std::string& attributeName, const std::string& t);
710 
711 private:
720 
721  // This method is used by the Table class when this row is added to the table.
722  void isAdded(bool added);
723 
724 
734 
753 
755  // Intrinsic Table Attributes //
757 
758 
759  // ===> Attribute timeInterval
760 
761 
762 
763  ArrayTimeInterval timeInterval;
764 
765 
766 
767 
768 
769 
770  // ===> Attribute numReceptor
771 
772 
773 
775 
776 
777 
778 
779 
780 
781  // ===> Attribute attenuator
782 
783 
784 
785  std::vector<float > attenuator;
786 
787 
788 
789 
790 
791 
792  // ===> Attribute polarizationType
793 
794 
795 
796  std::vector<PolarizationTypeMod::PolarizationType > polarizationType;
797 
798 
799 
800 
801 
802 
803  // ===> Attribute samplingLevel, which is optional
804 
805 
807 
808 
810 
811 
812 
813 
814 
815 
816  // ===> Attribute numAttFreq, which is optional
817 
818 
820 
821 
823 
824 
825 
826 
827 
828 
829  // ===> Attribute attFreq, which is optional
830 
831 
833 
834 
835  std::vector<double > attFreq;
836 
837 
838 
839 
840 
841 
842  // ===> Attribute attSpectrum, which is optional
843 
844 
846 
847 
848  std::vector<Complex > attSpectrum;
849 
850 
851 
852 
853 
855  // Extrinsic Table Attributes //
857 
858 
859  // ===> Attribute antennaId
860 
861 
862 
863  Tag antennaId;
864 
865 
866 
867 
868 
869 
870  // ===> Attribute feedId
871 
872 
873 
874  int feedId;
875 
876 
877 
878 
879 
880 
881  // ===> Attribute spectralWindowId
882 
883 
884 
886 
887 
888 
889 
890 
892  // Links //
894 
895 
896 
897 
898 
899 
900 
901 
902 
903 
904 
905 
906 
907 
908 
909 
910 
911 
912 
913 
914 
915 
916 /*
918  // binary-deserialization material from an EndianIStream //
920  std::map<std::string, GainTrackingAttributeFromBin> fromBinMethods;
921 void antennaIdFromBin( EndianIStream& eis);
922 void spectralWindowIdFromBin( EndianIStream& eis);
923 void timeIntervalFromBin( EndianIStream& eis);
924 void feedIdFromBin( EndianIStream& eis);
925 void numReceptorFromBin( EndianIStream& eis);
926 void attenuatorFromBin( EndianIStream& eis);
927 void polarizationTypeFromBin( EndianIStream& eis);
928 
929 void samplingLevelFromBin( EndianIStream& eis);
930 void numAttFreqFromBin( EndianIStream& eis);
931 void attFreqFromBin( EndianIStream& eis);
932 void attSpectrumFromBin( EndianIStream& eis);
933 
934 */
935 
937  // text-deserialization material //
939  std::map<std::string, GainTrackingAttributeFromText> fromTextMethods;
940 
941 void antennaIdFromText (const std::string & s);
942 
943 
944 void spectralWindowIdFromText (const std::string & s);
945 
946 
947 void timeIntervalFromText (const std::string & s);
948 
949 
950 void feedIdFromText (const std::string & s);
951 
952 
953 void numReceptorFromText (const std::string & s);
954 
955 
956 void attenuatorFromText (const std::string & s);
957 
958 
959 void polarizationTypeFromText (const std::string & s);
960 
961 
962 
963 void samplingLevelFromText (const std::string & s);
964 
965 
966 void numAttFreqFromText (const std::string & s);
967 
968 
969 void attFreqFromText (const std::string & s);
970 
971 
972 void attSpectrumFromText (const std::string & s);
973 
974 
975 
980  void toBin(EndianOSStream& eoss);
981 
991 };
992 
993 } // End namespace asdm
994 
995 #endif /* GainTracking_CLASS */
bool isNumAttFreqExists() const
===&gt; Attribute numAttFreq, which is optional
bool samplingLevelExists
===&gt; Attribute samplingLevel, which is optional
void feedIdFromText(const std::string &s)
int getNumReceptor() const
===&gt; Attribute numReceptor
float getSamplingLevel() const
Get samplingLevel, which is optional.
void attFreqFromBin(EndianIStream &eis)
The ArrayTimeInterval class aggregates an instance of ArrayTime and an instance of Interval...
bool equalByRequiredValue(GainTrackingRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
int feedId
===&gt; Attribute feedId
bool compareNoAutoInc(Tag antennaId, Tag spectralWindowId, ArrayTimeInterval timeInterval, int feedId, int numReceptor, std::vector< float > attenuator, std::vector< PolarizationTypeMod::PolarizationType > polarizationType)
Compare each mandatory attribute except the autoincrementable one of this GainTrackingRow with the co...
int getFeedId() const
===&gt; Attribute feedId
void clearAttSpectrum()
Mark attSpectrum, which is an optional field, as non-existent.
The GainTrackingRow class is a row of a GainTrackingTable.
Links *AntennaRow * getAntennaUsingAntennaId()
antennaId pointer to the row in the Antenna table having Antenna.antennaId == antennaId ...
asdmIDL::GainTrackingRowIDL * toIDL() const
Return this row in the form of an IDL struct.
bool hasBeenAdded
Whether this row has been added to the table or not.
Tag spectralWindowId
===&gt; Attribute spectralWindowId
void polarizationTypeFromBin(EndianIStream &eis)
void setSamplingLevel(float samplingLevel)
Set samplingLevel with the specified float.
void polarizationTypeFromText(const std::string &s)
bool attFreqExists
===&gt; Attribute attFreq, which is optional
void setTimeInterval(ArrayTimeInterval timeInterval)
Set timeInterval with the specified ArrayTimeInterval.
std::vector< double > getAttFreq() const
Get attFreq, which is optional.
void setFromIDL(asdmIDL::GainTrackingRowIDL x)
Fill the values of this row from the IDL struct GainTrackingRowIDL.
void numAttFreqFromBin(EndianIStream &eis)
GainTrackingRow(GainTrackingTable &table)
Create a GainTrackingRow.
void setNumAttFreq(int numAttFreq)
Set numAttFreq with the specified int.
void setAntennaId(Tag antennaId)
Set antennaId with the specified Tag.
bool numAttFreqExists
===&gt; Attribute numAttFreq, which is optional
std::vector< float > getAttenuator() const
===&gt; Attribute attenuator
void feedIdFromBin(EndianIStream &eis)
std::string toXML() const
Return this row in the form of an XML string.
Tag getSpectralWindowId() const
===&gt; Attribute spectralWindowId
void setNumReceptor(int numReceptor)
Set numReceptor with the specified int.
void clearAttFreq()
Mark attFreq, which is an optional field, as non-existent.
void spectralWindowIdFromBin(EndianIStream &eis)
bool isAttSpectrumExists() const
===&gt; Attribute attSpectrum, which is optional
void numReceptorFromBin(EndianIStream &eis)
int numReceptor
===&gt; Attribute numReceptor
void samplingLevelFromBin(EndianIStream &eis)
int getNumAttFreq() const
Get numAttFreq, which is optional.
void timeIntervalFromBin(EndianIStream &eis)
void setPolarizationType(std::vector< PolarizationTypeMod::PolarizationType > polarizationType)
Set polarizationType with the specified std::vector&lt;PolarizationTypeMod::PolarizationType &gt;...
bool compareRequiredValue(int numReceptor, std::vector< float > attenuator, std::vector< PolarizationTypeMod::PolarizationType > polarizationType)
Compare each mandatory value (i.e.
void attenuatorFromBin(EndianIStream &eis)
SpectralWindowRow * getSpectralWindowUsingSpectralWindowId()
spectralWindowId pointer to the row in the SpectralWindow table having SpectralWindow.spectralWindowId == spectralWindowId
void(GainTrackingRow::* GainTrackingAttributeFromBin)(EndianIStream &eis)
The AntennaRow class is a row of a AntennaTable.
Definition: AntennaRow.h:120
void setAttSpectrum(std::vector< Complex > attSpectrum)
Set attSpectrum with the specified std::vector&lt;Complex &gt;.
*text deserialization material std::map< std::string, GainTrackingAttributeFromText > fromTextMethods
bool isAdded() const
Has this row been added to its table ?
std::vector< Complex > getAttSpectrum() const
Get attSpectrum, which is optional.
void setFeedId(int feedId)
Set feedId with the specified int.
void numReceptorFromText(const std::string &s)
GainTrackingTable & table
The table to which this row belongs.
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
std::vector< FeedRow * > getFeeds()
===&gt; Slice link from a row of GainTracking table to a collection of row of Feed table.
Links *binary deserialization material from an EndianIStream std::map< std::string, GainTrackingAttributeFromBin > fromBinMethods
The Tag class is an implementation of a unique index identifying a row of an ASDM table...
Definition: Tag.h:73
void numAttFreqFromText(const std::string &s)
void spectralWindowIdFromText(const std::string &s)
void attenuatorFromText(const std::string &s)
The GainTrackingTable class is an Alma table.
void attSpectrumFromBin(EndianIStream &eis)
void clearNumAttFreq()
Mark numAttFreq, which is an optional field, as non-existent.
virtual ~GainTrackingRow()
friend class asdm::TableStreamReader&lt;GainTrackingTable, GainTrackingRow&gt;;
GainTrackingTable & getTable() const
Return the table to which this row belongs.
void setAttFreq(std::vector< double > attFreq)
Set attFreq with the specified std::vector&lt;double &gt;.
void attSpectrumFromText(const std::string &s)
std::vector< float > attenuator
===&gt; Attribute attenuator
void clearSamplingLevel()
Mark samplingLevel, which is an optional field, as non-existent.
void setAttenuator(std::vector< float > attenuator)
Set attenuator with the specified std::vector&lt;float &gt;.
std::vector< Complex > attSpectrum
void attFreqFromText(const std::string &s)
std::vector< double > attFreq
std::vector< PolarizationTypeMod::PolarizationType > getPolarizationType() const
===&gt; Attribute polarizationType
bool isSamplingLevelExists() const
===&gt; Attribute samplingLevel, which is optional
void samplingLevelFromText(const std::string &s)
void setFromXML(std::string rowDoc)
Fill the values of this row from an XML string that was produced by the toXML() method.
void(GainTrackingRow::* GainTrackingAttributeFromText)(const std::string &s)
The SpectralWindowRow class is a row of a SpectralWindowTable.
void antennaIdFromBin(EndianIStream &eis)
void antennaIdFromText(const std::string &s)
void timeIntervalFromText(const std::string &s)
void setSpectralWindowId(Tag spectralWindowId)
Set spectralWindowId with the specified Tag.
bool isAttFreqExists() const
===&gt; Attribute attFreq, which is optional
bool attSpectrumExists
===&gt; Attribute attSpectrum, which is optional
std::vector< PolarizationTypeMod::PolarizationType > polarizationType
===&gt; Attribute polarizationType