casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FocusModelRow.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 FocusModelRow.h
32  */
33 
34 #ifndef FocusModelRow_CLASS
35 #define FocusModelRow_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 
51 #include <alma/ASDM/Tag.h>
52 
53 
54 
55 
56 
57 
58 
59 
61 
62 
63 
65 
66 
67 
68 
69 
70 
71 
72 
73 
74 
75 
76 
77 
78 
80 #include <alma/ASDM/NoSuchRow.h>
82 
84 //#include <alma/ASDM/TableStreamReader.h>
85 
86 /*\file FocusModel.h
87  \brief Generated from model's revision "-1", branch ""
88 */
89 
90 namespace asdm {
91 
92 //class asdm::FocusModelTable;
93 
94 
95 // class asdm::AntennaRow;
96 class AntennaRow;
97 
98 // class asdm::FocusModelRow;
99 class FocusModelRow;
100 
101 
102 class FocusModelRow;
104 typedef void (FocusModelRow::*FocusModelAttributeFromText) (const std::string& s);
105 
115 //friend class asdm::TableStreamReader<FocusModelTable, FocusModelRow>;
116 
117 public:
118 
119  virtual ~FocusModelRow();
120 
124  FocusModelTable &getTable() const;
125 
130  bool isAdded() const;
131 
133  // Intrinsic Table Attributes //
135 
136 
137  // ===> Attribute focusModelId
138 
139 
140 
141 
142 
147  int getFocusModelId() const;
148 
149 
150 
151 
152 
153 
154 
155 
156 
157  // ===> Attribute polarizationType
158 
159 
160 
161 
162 
167  PolarizationTypeMod::PolarizationType getPolarizationType() const;
168 
169 
170 
171 
179  void setPolarizationType (PolarizationTypeMod::PolarizationType polarizationType);
180 
181 
182 
183 
184 
185 
186 
187  // ===> Attribute receiverBand
188 
189 
190 
191 
192 
197  ReceiverBandMod::ReceiverBand getReceiverBand() const;
198 
199 
200 
201 
209  void setReceiverBand (ReceiverBandMod::ReceiverBand receiverBand);
210 
211 
212 
213 
214 
215 
216 
217  // ===> Attribute numCoeff
218 
219 
220 
221 
222 
227  int getNumCoeff() const;
228 
229 
230 
231 
239  void setNumCoeff (int numCoeff);
240 
241 
242 
243 
244 
245 
246 
247  // ===> Attribute coeffName
248 
249 
250 
251 
252 
257  std::vector<std::string > getCoeffName() const;
258 
259 
260 
261 
269  void setCoeffName (std::vector<std::string > coeffName);
270 
271 
272 
273 
274 
275 
276 
277  // ===> Attribute coeffFormula
278 
279 
280 
281 
282 
287  std::vector<std::string > getCoeffFormula() const;
288 
289 
290 
291 
299  void setCoeffFormula (std::vector<std::string > coeffFormula);
300 
301 
302 
303 
304 
305 
306 
307  // ===> Attribute coeffVal
308 
309 
310 
311 
312 
317  std::vector<float > getCoeffVal() const;
318 
319 
320 
321 
329  void setCoeffVal (std::vector<float > coeffVal);
330 
331 
332 
333 
334 
335 
336 
337  // ===> Attribute assocNature
338 
339 
340 
341 
342 
347  std::string getAssocNature() const;
348 
349 
350 
351 
359  void setAssocNature (std::string assocNature);
360 
361 
362 
363 
364 
365 
367  // Extrinsic Table Attributes //
369 
370 
371  // ===> Attribute antennaId
372 
373 
374 
375 
376 
381  Tag getAntennaId() const;
382 
383 
384 
385 
395  void setAntennaId (Tag antennaId);
396 
397 
398 
399 
400 
401 
402 
403  // ===> Attribute assocFocusModelId
404 
405 
406 
407 
408 
413  int getAssocFocusModelId() const;
414 
415 
416 
417 
426 
427 
428 
429 
430 
431 
433  // Links //
435 
436 
437 
438 
439 
447 
448 
449 
450 
451 
452 
453 
454 
455  // ===> Slice link from a row of FocusModel table to a collection of row of FocusModel table.
456 
462  std::vector <FocusModelRow *> getFocusModels();
463 
464 
465 
466 
467 
468 
469 
470 
494  bool compareNoAutoInc(Tag antennaId, PolarizationTypeMod::PolarizationType polarizationType, ReceiverBandMod::ReceiverBand receiverBand, int numCoeff, std::vector<std::string > coeffName, std::vector<std::string > coeffFormula, std::vector<float > coeffVal, std::string assocNature, int assocFocusModelId);
495 
496 
497 
498 
520  bool compareRequiredValue(PolarizationTypeMod::PolarizationType polarizationType, ReceiverBandMod::ReceiverBand receiverBand, int numCoeff, std::vector<std::string > coeffName, std::vector<std::string > coeffFormula, std::vector<float > coeffVal, std::string assocNature, int assocFocusModelId);
521 
522 
532 
533 #ifndef WITHOUT_ACS
534 
538  asdmIDL::FocusModelRowIDL *toIDL() const;
539 
547  void toIDL(asdmIDL::FocusModelRowIDL& x) const;
548 #endif
549 
550 #ifndef WITHOUT_ACS
551 
556  void setFromIDL (asdmIDL::FocusModelRowIDL x) ;
557 #endif
558 
563  std::string toXML() const;
564 
571  void setFromXML (std::string rowDoc) ;
572 
575  // binary-deserialization material from an EndianIStream //
577 
578  std::map<std::string, FocusModelAttributeFromBin> fromBinMethods;
579 void antennaIdFromBin( EndianIStream& eis);
583 void numCoeffFromBin( EndianIStream& eis);
584 void coeffNameFromBin( EndianIStream& eis);
586 void coeffValFromBin( EndianIStream& eis);
589 
590 
591 
599  static FocusModelRow* fromBin(EndianIStream& eis, FocusModelTable& table, const std::vector<std::string>& attributesSeq);
600 
607  void fromText(const std::string& attributeName, const std::string& t);
609 
610 private:
619 
620  // This method is used by the Table class when this row is added to the table.
621  void isAdded(bool added);
622 
623 
633 
652 
654  // Intrinsic Table Attributes //
656 
657 
658  // ===> Attribute focusModelId
659 
660 
661 
662  int focusModelId;
663 
664 
665 
666 
676  void setFocusModelId (int focusModelId);
677 
678 
679 
680 
681  // ===> Attribute polarizationType
682 
683 
684 
685  PolarizationTypeMod::PolarizationType polarizationType;
686 
687 
688 
689 
690 
691 
692  // ===> Attribute receiverBand
693 
694 
695 
696  ReceiverBandMod::ReceiverBand receiverBand;
697 
698 
699 
700 
701 
702 
703  // ===> Attribute numCoeff
704 
705 
706 
707  int numCoeff;
708 
709 
710 
711 
712 
713 
714  // ===> Attribute coeffName
715 
716 
717 
718  std::vector<std::string > coeffName;
719 
720 
721 
722 
723 
724 
725  // ===> Attribute coeffFormula
726 
727 
728 
729  std::vector<std::string > coeffFormula;
730 
731 
732 
733 
734 
735 
736  // ===> Attribute coeffVal
737 
738 
739 
740  std::vector<float > coeffVal;
741 
742 
743 
744 
745 
746 
747  // ===> Attribute assocNature
748 
749 
750 
751  std::string assocNature;
752 
753 
754 
755 
756 
758  // Extrinsic Table Attributes //
760 
761 
762  // ===> Attribute antennaId
763 
764 
765 
766  Tag antennaId;
767 
768 
769 
770 
771 
772 
773  // ===> Attribute assocFocusModelId
774 
775 
776 
778 
779 
780 
781 
782 
784  // Links //
786 
787 
788 
789 
790 
791 
792 
793 
794 
795 
796 
797 
798 
799 
800 
801 /*
803  // binary-deserialization material from an EndianIStream //
805  std::map<std::string, FocusModelAttributeFromBin> fromBinMethods;
806 void antennaIdFromBin( EndianIStream& eis);
807 void focusModelIdFromBin( EndianIStream& eis);
808 void polarizationTypeFromBin( EndianIStream& eis);
809 void receiverBandFromBin( EndianIStream& eis);
810 void numCoeffFromBin( EndianIStream& eis);
811 void coeffNameFromBin( EndianIStream& eis);
812 void coeffFormulaFromBin( EndianIStream& eis);
813 void coeffValFromBin( EndianIStream& eis);
814 void assocNatureFromBin( EndianIStream& eis);
815 void assocFocusModelIdFromBin( EndianIStream& eis);
816 
817 
818 */
819 
821  // text-deserialization material //
823  std::map<std::string, FocusModelAttributeFromText> fromTextMethods;
824 
825 void antennaIdFromText (const std::string & s);
826 
827 
828 void focusModelIdFromText (const std::string & s);
829 
830 
831 void polarizationTypeFromText (const std::string & s);
832 
833 
834 void receiverBandFromText (const std::string & s);
835 
836 
837 void numCoeffFromText (const std::string & s);
838 
839 
840 void coeffNameFromText (const std::string & s);
841 
842 
843 void coeffFormulaFromText (const std::string & s);
844 
845 
846 void coeffValFromText (const std::string & s);
847 
848 
849 void assocNatureFromText (const std::string & s);
850 
851 
852 void assocFocusModelIdFromText (const std::string & s);
853 
854 
855 
856 
861  void toBin(EndianOSStream& eoss);
862 
872 };
873 
874 } // End namespace asdm
875 
876 #endif /* FocusModel_CLASS */
void assocFocusModelIdFromText(const std::string &s)
void coeffValFromBin(EndianIStream &eis)
void setFromIDL(asdmIDL::FocusModelRowIDL x)
Fill the values of this row from the IDL struct FocusModelRowIDL.
std::vector< float > coeffVal
===&gt; Attribute coeffVal
FocusModelTable & table
The table to which this row belongs.
int getNumCoeff() const
===&gt; Attribute numCoeff
std::vector< FocusModelRow * > getFocusModels()
===&gt; Slice link from a row of FocusModel table to a collection of row of FocusModel table...
ReceiverBandMod::ReceiverBand getReceiverBand() const
===&gt; Attribute receiverBand
void setPolarizationType(PolarizationTypeMod::PolarizationType polarizationType)
Set polarizationType with the specified PolarizationTypeMod::PolarizationType.
bool hasBeenAdded
Whether this row has been added to the table or not.
void setNumCoeff(int numCoeff)
Set numCoeff with the specified int.
void assocFocusModelIdFromBin(EndianIStream &eis)
std::vector< std::string > getCoeffName() const
===&gt; Attribute coeffName
void setAssocFocusModelId(int assocFocusModelId)
Set assocFocusModelId with the specified int.
void antennaIdFromText(const std::string &s)
void polarizationTypeFromBin(EndianIStream &eis)
void setAntennaId(Tag antennaId)
Set antennaId with the specified Tag.
int getAssocFocusModelId() const
===&gt; Attribute assocFocusModelId
void setCoeffName(std::vector< std::string > coeffName)
Set coeffName with the specified std::vector&lt;std::string &gt;.
bool isAdded() const
Has this row been added to its table ?
void receiverBandFromBin(EndianIStream &eis)
void setCoeffVal(std::vector< float > coeffVal)
Set coeffVal with the specified std::vector&lt;float &gt;.
PolarizationTypeMod::PolarizationType getPolarizationType() const
===&gt; Attribute polarizationType
void numCoeffFromBin(EndianIStream &eis)
void coeffValFromText(const std::string &s)
Links *AntennaRow * getAntennaUsingAntennaId()
antennaId pointer to the row in the Antenna table having Antenna.antennaId == antennaId ...
void coeffNameFromBin(EndianIStream &eis)
bool equalByRequiredValue(FocusModelRow *x)
Return true if all required attributes of the value part are equal to their homologues in x and false...
void setAssocNature(std::string assocNature)
Set assocNature with the specified std::string.
void setReceiverBand(ReceiverBandMod::ReceiverBand receiverBand)
Set receiverBand with the specified ReceiverBandMod::ReceiverBand.
bool compareNoAutoInc(Tag antennaId, PolarizationTypeMod::PolarizationType polarizationType, ReceiverBandMod::ReceiverBand receiverBand, int numCoeff, std::vector< std::string > coeffName, std::vector< std::string > coeffFormula, std::vector< float > coeffVal, std::string assocNature, int assocFocusModelId)
Compare each mandatory attribute except the autoincrementable one of this FocusModelRow with the corr...
std::string toXML() const
Return this row in the form of an XML string.
The AntennaRow class is a row of a AntennaTable.
Definition: AntennaRow.h:120
bool compareRequiredValue(PolarizationTypeMod::PolarizationType polarizationType, ReceiverBandMod::ReceiverBand receiverBand, int numCoeff, std::vector< std::string > coeffName, std::vector< std::string > coeffFormula, std::vector< float > coeffVal, std::string assocNature, int assocFocusModelId)
Compare each mandatory value (i.e.
std::vector< std::string > getCoeffFormula() const
===&gt; Attribute coeffFormula
asdmIDL::FocusModelRowIDL * toIDL() const
Return this row in the form of an IDL struct.
void numCoeffFromText(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 assocNatureFromText(const std::string &s)
The Tag class is an implementation of a unique index identifying a row of an ASDM table...
Definition: Tag.h:73
void antennaIdFromBin(EndianIStream &eis)
void coeffFormulaFromText(const std::string &s)
void(FocusModelRow::* FocusModelAttributeFromBin)(EndianIStream &eis)
int assocFocusModelId
===&gt; Attribute assocFocusModelId
void coeffFormulaFromBin(EndianIStream &eis)
void assocNatureFromBin(EndianIStream &eis)
void(FocusModelRow::* FocusModelAttributeFromText)(const std::string &s)
std::vector< std::string > coeffName
===&gt; Attribute coeffName
std::vector< float > getCoeffVal() const
===&gt; Attribute coeffVal
The FocusModelRow class is a row of a FocusModelTable.
FocusModelRow(FocusModelTable &table)
Create a FocusModelRow.
int numCoeff
===&gt; Attribute numCoeff
std::string getAssocNature() const
===&gt; Attribute assocNature
void focusModelIdFromBin(EndianIStream &eis)
ReceiverBandMod::ReceiverBand receiverBand
===&gt; Attribute receiverBand
virtual ~FocusModelRow()
friend class asdm::TableStreamReader&lt;FocusModelTable, FocusModelRow&gt;;
void setFocusModelId(int focusModelId)
Set focusModelId with the specified int value.
The FocusModelTable class is an Alma table.
PolarizationTypeMod::PolarizationType polarizationType
===&gt; Attribute polarizationType
void focusModelIdFromText(const std::string &s)
void coeffNameFromText(const std::string &s)
void toBin(EndianOSStream &eoss)
Serialize this into a stream of bytes written to an EndianOSStream.
void setCoeffFormula(std::vector< std::string > coeffFormula)
Set coeffFormula with the specified std::vector&lt;std::string &gt;.
std::vector< std::string > coeffFormula
===&gt; Attribute coeffFormula
FocusModelTable & getTable() const
Return the table to which this row belongs.
void polarizationTypeFromText(const std::string &s)
void receiverBandFromText(const std::string &s)
std::string assocNature
===&gt; Attribute assocNature
Links *binary deserialization material from an EndianIStream std::map< std::string, FocusModelAttributeFromBin > fromBinMethods
*text deserialization material std::map< std::string, FocusModelAttributeFromText > fromTextMethods