casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FreqOffsetRow.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 FreqOffsetRow.h
32  */
33 
34 #ifndef FreqOffsetRow_CLASS
35 #define FreqOffsetRow_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/Frequency.h>
56 
57 
58 
59 #include <alma/ASDM/Tag.h>
60 
61 
62 
63 
64 
65 
66 
67 
68 
69 
70 
72 #include <alma/ASDM/NoSuchRow.h>
74 
76 //#include <alma/ASDM/TableStreamReader.h>
77 
78 /*\file FreqOffset.h
79  \brief Generated from model's revision "-1", branch ""
80 */
81 
82 namespace asdm {
83 
84 //class asdm::FreqOffsetTable;
85 
86 
87 // class asdm::AntennaRow;
88 class AntennaRow;
89 
90 // class asdm::SpectralWindowRow;
91 class SpectralWindowRow;
92 
93 // class asdm::FeedRow;
94 class FeedRow;
95 
96 
97 class FreqOffsetRow;
99 typedef void (FreqOffsetRow::*FreqOffsetAttributeFromText) (const std::string& s);
100 
110 //friend class asdm::TableStreamReader<FreqOffsetTable, FreqOffsetRow>;
111 
112 public:
113 
114  virtual ~FreqOffsetRow();
115 
119  FreqOffsetTable &getTable() const;
120 
125  bool isAdded() const;
126 
128  // Intrinsic Table Attributes //
130 
131 
132  // ===> Attribute timeInterval
133 
134 
135 
136 
137 
142  ArrayTimeInterval getTimeInterval() const;
143 
144 
145 
146 
156  void setTimeInterval (ArrayTimeInterval timeInterval);
157 
158 
159 
160 
161 
162 
163 
164  // ===> Attribute offset
165 
166 
167 
168 
169 
174  Frequency getOffset() const;
175 
176 
177 
178 
186  void setOffset (Frequency offset);
187 
188 
189 
190 
191 
192 
194  // Extrinsic Table Attributes //
196 
197 
198  // ===> Attribute antennaId
199 
200 
201 
202 
203 
208  Tag getAntennaId() const;
209 
210 
211 
212 
222  void setAntennaId (Tag antennaId);
223 
224 
225 
226 
227 
228 
229 
230  // ===> Attribute feedId
231 
232 
233 
234 
235 
240  int getFeedId() const;
241 
242 
243 
244 
254  void setFeedId (int feedId);
255 
256 
257 
258 
259 
260 
261 
262  // ===> Attribute spectralWindowId
263 
264 
265 
266 
267 
272  Tag getSpectralWindowId() const;
273 
274 
275 
276 
287 
288 
289 
290 
291 
292 
294  // Links //
296 
297 
298 
299 
300 
308 
309 
310 
311 
312 
313 
314 
315 
323 
324 
325 
326 
327 
328 
329 
330 
331  // ===> Slice link from a row of FreqOffset table to a collection of row of Feed table.
332 
338  std::vector <FeedRow *> getFeeds();
339 
340 
341 
342 
343 
344 
345 
346 
362  bool compareNoAutoInc(Tag antennaId, Tag spectralWindowId, ArrayTimeInterval timeInterval, int feedId, Frequency offset);
363 
364 
365 
366 
375 
376 
386 
387 #ifndef WITHOUT_ACS
388 
392  asdmIDL::FreqOffsetRowIDL *toIDL() const;
393 
401  void toIDL(asdmIDL::FreqOffsetRowIDL& x) const;
402 #endif
403 
404 #ifndef WITHOUT_ACS
405 
410  void setFromIDL (asdmIDL::FreqOffsetRowIDL x) ;
411 #endif
412 
417  std::string toXML() const;
418 
425  void setFromXML (std::string rowDoc) ;
426 
429  // binary-deserialization material from an EndianIStream //
431 
432  std::map<std::string, FreqOffsetAttributeFromBin> fromBinMethods;
433 void antennaIdFromBin( EndianIStream& eis);
436 void feedIdFromBin( EndianIStream& eis);
437 void offsetFromBin( EndianIStream& eis);
438 
439 
440 
448  static FreqOffsetRow* fromBin(EndianIStream& eis, FreqOffsetTable& table, const std::vector<std::string>& attributesSeq);
449 
456  void fromText(const std::string& attributeName, const std::string& t);
458 
459 private:
468 
469  // This method is used by the Table class when this row is added to the table.
470  void isAdded(bool added);
471 
472 
482 
501 
503  // Intrinsic Table Attributes //
505 
506 
507  // ===> Attribute timeInterval
508 
509 
510 
511  ArrayTimeInterval timeInterval;
512 
513 
514 
515 
516 
517 
518  // ===> Attribute offset
519 
520 
521 
523 
524 
525 
526 
527 
529  // Extrinsic Table Attributes //
531 
532 
533  // ===> Attribute antennaId
534 
535 
536 
537  Tag antennaId;
538 
539 
540 
541 
542 
543 
544  // ===> Attribute feedId
545 
546 
547 
548  int feedId;
549 
550 
551 
552 
553 
554 
555  // ===> Attribute spectralWindowId
556 
557 
558 
560 
561 
562 
563 
564 
566  // Links //
568 
569 
570 
571 
572 
573 
574 
575 
576 
577 
578 
579 
580 
581 
582 
583 
584 
585 
586 
587 
588 
589 
590 /*
592  // binary-deserialization material from an EndianIStream //
594  std::map<std::string, FreqOffsetAttributeFromBin> fromBinMethods;
595 void antennaIdFromBin( EndianIStream& eis);
596 void spectralWindowIdFromBin( EndianIStream& eis);
597 void timeIntervalFromBin( EndianIStream& eis);
598 void feedIdFromBin( EndianIStream& eis);
599 void offsetFromBin( EndianIStream& eis);
600 
601 
602 */
603 
605  // text-deserialization material //
607  std::map<std::string, FreqOffsetAttributeFromText> fromTextMethods;
608 
609 void antennaIdFromText (const std::string & s);
610 
611 
612 void spectralWindowIdFromText (const std::string & s);
613 
614 
615 void timeIntervalFromText (const std::string & s);
616 
617 
618 void feedIdFromText (const std::string & s);
619 
620 
621 void offsetFromText (const std::string & s);
622 
623 
624 
625 
630  void toBin(EndianOSStream& eoss);
631 
641 };
642 
643 } // End namespace asdm
644 
645 #endif /* FreqOffset_CLASS */
void setSpectralWindowId(Tag spectralWindowId)
Set spectralWindowId with the specified Tag.
void(FreqOffsetRow::* FreqOffsetAttributeFromText)(const std::string &s)
Definition: FreqOffsetRow.h:99
void offsetFromBin(EndianIStream &eis)
Links *binary deserialization material from an EndianIStream std::map< std::string, FreqOffsetAttributeFromBin > fromBinMethods
void setAntennaId(Tag antennaId)
Set antennaId with the specified Tag.
SpectralWindowRow * getSpectralWindowUsingSpectralWindowId()
spectralWindowId pointer to the row in the SpectralWindow table having SpectralWindow.spectralWindowId == spectralWindowId
void spectralWindowIdFromText(const std::string &s)
void feedIdFromText(const std::string &s)
The FreqOffsetRow class is a row of a FreqOffsetTable.
The FreqOffsetTable class is an Alma table.
The ArrayTimeInterval class aggregates an instance of ArrayTime and an instance of Interval...
bool compareNoAutoInc(Tag antennaId, Tag spectralWindowId, ArrayTimeInterval timeInterval, int feedId, Frequency offset)
Compare each mandatory attribute except the autoincrementable one of this FreqOffsetRow with the corr...
FreqOffsetTable & table
The table to which this row belongs.
void feedIdFromBin(EndianIStream &eis)
void antennaIdFromBin(EndianIStream &eis)
int getFeedId() const
===&gt; Attribute feedId
virtual ~FreqOffsetRow()
friend class asdm::TableStreamReader&lt;FreqOffsetTable, FreqOffsetRow&gt;;
Tag getSpectralWindowId() const
===&gt; Attribute spectralWindowId
std::string toXML() const
Return this row in the form of an XML string.
int feedId
===&gt; Attribute feedId
Links *AntennaRow * getAntennaUsingAntennaId()
antennaId pointer to the row in the Antenna table having Antenna.antennaId == antennaId ...
void offsetFromText(const std::string &s)
Tag spectralWindowId
===&gt; Attribute spectralWindowId
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
bool equalByRequiredValue(FreqOffsetRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
void antennaIdFromText(const std::string &s)
void setFeedId(int feedId)
Set feedId with the specified int.
The AntennaRow class is a row of a AntennaTable.
Definition: AntennaRow.h:120
FreqOffsetRow(FreqOffsetTable &table)
Create a FreqOffsetRow.
std::vector< FeedRow * > getFeeds()
===&gt; Slice link from a row of FreqOffset table to a collection of row of Feed table.
bool hasBeenAdded
Whether this row has been added to the table or not.
The Tag class is an implementation of a unique index identifying a row of an ASDM table...
Definition: Tag.h:73
void timeIntervalFromBin(EndianIStream &eis)
void timeIntervalFromText(const std::string &s)
void setTimeInterval(ArrayTimeInterval timeInterval)
Set timeInterval with the specified ArrayTimeInterval.
Frequency offset
===&gt; Attribute offset
void setFromIDL(asdmIDL::FreqOffsetRowIDL x)
Fill the values of this row from the IDL struct FreqOffsetRowIDL.
*text deserialization material std::map< std::string, FreqOffsetAttributeFromText > fromTextMethods
void setOffset(Frequency offset)
Set offset with the specified Frequency.
Frequency getOffset() const
===&gt; Attribute offset
asdmIDL::FreqOffsetRowIDL * toIDL() const
Return this row in the form of an IDL struct.
FreqOffsetTable & getTable() const
Return the table to which this row belongs.
void spectralWindowIdFromBin(EndianIStream &eis)
void(FreqOffsetRow::* FreqOffsetAttributeFromBin)(EndianIStream &eis)
Definition: FreqOffsetRow.h:98
The Frequency class implements a quantity of frequency in hertz.
Definition: Frequency.h:53
The SpectralWindowRow class is a row of a SpectralWindowTable.
bool isAdded() const
Has this row been added to its table ?
bool compareRequiredValue(Frequency offset)
Compare each mandatory value (i.e.
void setFromXML(std::string rowDoc)
Fill the values of this row from an XML string that was produced by the toXML() method.