1 // Copyright 2008, Google Inc. All rights reserved.
2 //
3 // Redistribution and use in source and binary forms, with or without
4 // modification, are permitted provided that the following conditions are met:
5 //
6 //  1. Redistributions of source code must retain the above copyright notice,
7 //     this list of conditions and the following disclaimer.
8 //  2. Redistributions in binary form must reproduce the above copyright notice,
9 //     this list of conditions and the following disclaimer in the documentation
10 //     and/or other materials provided with the distribution.
11 //  3. Neither the name of Google Inc. nor the names of its contributors may be
12 //     used to endorse or promote products derived from this software without
13 //     specific prior written permission.
14 //
15 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
16 // WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
17 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
18 // EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
19 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
20 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
21 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
22 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
23 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
24 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 
26 // Generated from the KML 2.2 XSD.
27 
28 // This is the SWIG interface file for the public API to the KML DOM.
29 // In addition to serving the needs of SWIG this also serves to document the
30 // public C++ API separate from the present implementation found in the
31 // private sections of the present C++ .h files.
32 
33 // This is AbstractObjectType in the KML 2.2 XSD.
34 %nodefaultctor Object;
35 class Object : public Element {
36 public:
37   // id=
38   const std::string& get_id();
39   void set_id(const std::string& id);
40   bool has_id();
41   void clear_id();
42 
43   // targetId=
44   const std::string& get_targetid();
45   void set_targetid(const std::string& targetid);
46   bool has_targetid();
47   void clear_targetid();
48 };
49 
50 %nodefaultctor SubStyle;
51 class SubStyle : public Object {
52 };
53 
54 %nodefaultctor ColorStyle;
55 class ColorStyle : public SubStyle {
56 public:
57   // <color>
58   const kmlbase::Color32& get_color();
59   void set_color(const kmlbase::Color32& color);
60   bool has_color();
61   void clear_color();
62 
63   // <colorMode>
64   int get_colormode();
65   void set_colormode(int colormode);
66   bool has_colormode();
67   void clear_colormode();
68 };
69 
70 %nodefaultctor SnippetCommon;
71 class SnippetCommon : public Element {
72 public:
73   // Content.
74   const std::string& get_text();
75   void set_text(const std::string& text);
76   bool has_text();
77   void clear_text();
78 
79   // maxLines=
80   int get_maxlines();
81   void set_maxlines(int maxlines);
82   bool has_maxlines();
83   void clear_maxlines();
84 };
85 
86 %nodefaultctor Snippet;
87 class Snippet : public SnippetCommon {
88 };
89 
90 %nodefaultctor LinkSnippet;
91 class LinkSnippet : public SnippetCommon {
92 };
93 
94 %nodefaultctor AbstractView;
95 class AbstractView : public Object {
96  public:
97   // gx:TimeStamp and gx:TimeSpan.
98   const TimePrimitivePtr get_gx_timeprimitive();
99   bool has_gx_timeprimitive();
100   void set_gx_timeprimitive(const TimePrimitivePtr& gx_timeprimitive);
101   void clear_gx_timeprimitive();
102 };
103 
104 %nodefaultctor TimePrimitive;
105 class TimePrimitive : public Object {
106 };
107 
108 %nodefaultctor StyleSelector;
109 class StyleSelector : public Object {
110 };
111 
112 %nodefaultctor AbstractLatLonBox;
113 class AbstractLatLonBox : public Object {
114 public:
115   // <north>
116   double get_north();
117   bool has_north();
118   void set_north(double north);
119   void clear_north();
120 
121   // <south>
122   double get_south();
123   bool has_south();
124   void set_south(double south);
125   void clear_south();
126 
127   // <east>
128   double get_east();
129   bool has_east();
130   void set_east(double east);
131   void clear_east();
132 
133   // <west>
134   double get_west();
135   bool has_west();
136   void set_west(double west);
137   void clear_west();
138 };
139 
140 %nodefaultctor LatLonAltBox;
141 class LatLonAltBox : public AbstractLatLonBox {
142 public:
143   // <minAltitude>
144   double get_minaltitude();
145   void set_minaltitude(double minaltitude);
146   bool has_minaltitude();
147   void clear_minaltitude();
148 
149   // <maxAltitude>
150   double get_maxaltitude();
151   void set_maxaltitude(double maxaltitude);
152   bool has_maxaltitude();
153   void clear_maxaltitude();
154 
155   // <altitudeMode>
156   int get_altitudemode();
157   void set_altitudemode(int altitudemode);
158   bool has_altitudemode();
159   void clear_altitudemode();
160 
161   // <gx:altitudeMode>
162   int get_gx_altitudemode();
163   bool has_gx_altitudemode();
164   void set_gx_altitudemode(int gx_altitudemode);
165   void clear_gx_altitudemode();
166 };
167 
168 %nodefaultctor Lod;
169 class Lod : public Object {
170 public:
171   // <minLodPixels>
172   double get_minlodpixels();
173   void set_minlodpixels(double minlodpixels);
174   bool has_minlodpixels();
175   void clear_minlodpixels();
176 
177   // <maxLodPixels>
178   double get_maxlodpixels();
179   void set_maxlodpixels(double maxlodpixels);
180   bool has_maxlodpixels();
181   void clear_maxlodpixels();
182 
183   // <minFadeExtent>
184   double get_minfadeextent();
185   void set_minfadeextent(double minfadeextent);
186   bool has_minfadeextent();
187   void clear_minfadeextent();
188 
189   // <maxFadeExtent>
190   double get_maxfadeextent();
191   void set_maxfadeextent(double maxfadeextent);
192   bool has_maxfadeextent();
193   void clear_maxfadeextent();
194 };
195 
196 %nodefaultctor Region;
197 class Region : public Object {
198 public:
199   // <LatLonAltBox>
200   const LatLonAltBoxPtr get_latlonaltbox();
201   void set_latlonaltbox(LatLonAltBoxPtr latlonaltbox);
202   bool has_latlonaltbox();
203   void clear_latlonaltbox();
204 
205   // <Lod>
206   const LodPtr get_lod();
207   void set_lod(LodPtr lod);
208   bool has_lod();
209   void clear_lod();
210 };
211 
212 %nodefaultctor ExtendedData;
213 class ExtendedData : public Element {
214 public:
215   // <Data>.
216   void add_data(DataPtr data);
217   const size_t get_data_array_size();
218   const DataPtr get_data_array_at(unsigned int index);
219   // <SchemaData>.
220   void add_schemadata(SchemaDataPtr schemadata);
221   const size_t get_schemadata_array_size();
222   const SchemaDataPtr get_schemadata_array_at(unsigned int index);
223 };
224 
225 %nodefaultctor Feature;
226 class Feature : public Object {
227 public:
228   // <name>
229   const std::string& get_name();
230   void set_name(const std::string& name);
231   bool has_name();
232   void clear_name();
233 
234   // <visibility>
235   bool get_visibility();
236   void set_visibility(bool visibility);
237   bool has_visibility();
238   void clear_visibility();
239 
240   // <open>
241   bool get_open();
242   void set_open(bool open);
243   bool has_open();
244   void clear_open();
245 
246   // <atom:author>
247   const AtomAuthorPtr get_atomauthor();
248   bool has_atomauthor();
249   void set_atomauthor(AtomAuthorPtr atomauthor);
250   void clear_atomauthor();
251 
252   // <atom:link>
253   const AtomLinkPtr get_atomlink();
254   bool has_atomlink();
255   void set_atomlink(AtomLinkPtr atomlink);
256   void clear_atomlink();
257 
258   // <address>
259   const std::string& get_address();
260   void set_address(const std::string& address);
261   bool has_address();
262   void clear_address();
263 
264   // <phoneNumber>
265   const std::string& get_phonenumber();
266   void set_phonenumber(const std::string& phonenumber);
267   bool has_phonenumber();
268   void clear_phonenumber();
269 
270   // <Snippet>
271   const SnippetPtr get_snippet();
272   void set_snippet(SnippetPtr snippet);
273   bool has_snippet();
274   void clear_snippet();
275 
276   // <description>
277   const std::string& get_description();
278   void set_description(const std::string& description);
279   bool has_description();
280   void clear_description();
281 
282   // AbstractView
283   const AbstractViewPtr get_abstractview();
284   void set_abstractview(AbstractViewPtr abstractview);
285   bool has_abstractview();
286   void clear_abstractview();
287 
288   // TimePrimitive
289   const TimePrimitivePtr get_timeprimitive();
290   void set_timeprimitive(TimePrimitivePtr timeprimitive);
291   bool has_timeprimitive();
292   void clear_timeprimitive();
293 
294   // <styleUrl>
295   const std::string& get_styleurl();
296   void set_styleurl(const std::string& styleurl);
297   bool has_styleurl();
298   void clear_styleurl();
299 
300   // StyleSelector
301   const StyleSelectorPtr get_styleselector();
302   void set_styleselector(StyleSelectorPtr styleselector);
303   bool has_styleselector();
304   void clear_styleselector();
305 
306   // <Region>
307   const RegionPtr get_region();
308   void set_region(RegionPtr region);
309   bool has_region();
310   void clear_region();
311 
312   // <ExtendedData>
313   const ExtendedDataPtr get_extendeddata();
314   void set_extendeddata(ExtendedDataPtr extendeddata);
315   bool has_extendeddata();
316   void clear_extendeddata();
317 
318   // <gx:balloonVisibility>
319   bool get_gx_balloonvisibility();
320   void set_gx_balloonvisibility(bool balloonvisibility);
321   bool has_gx_balloonvisibility();
322   void clear_gx_balloonvisibility();
323 };
324 
325 %nodefaultctor Container;
326 class Container : public Feature {
327 public:
328   // Feature...
329   void add_feature(FeaturePtr feature);
330   const size_t get_feature_array_size();
331   const FeaturePtr get_feature_array_at(unsigned int index);
332 };
333 
334 %nodefaultctor Geometry;
335 class Geometry : public Object {
336 };
337 
338 %nodefaultctor BasicLink;
339 class BasicLink : public Object {
340 public:
341   // <href>
342   const std::string& get_href();
343   bool has_href();
344   void set_href(const std::string& href);
345   void clear_href();
346 };
347 
348 %nodefaultctor Icon;
349 class Icon : public BasicLink {
350 public:
351   // <refreshMode>
352   int get_refreshmode();
353   void set_refreshmode(int refreshmode);
354   bool has_refreshmode();
355   void clear_refreshmode();
356 
357   // <refreshInterval>
358   double get_refreshinterval();
359   void set_refreshinterval(double refreshinterval);
360   bool has_refreshinterval();
361   void clear_refreshinterval();
362 
363   // <viewRefreshMode>
364   int get_viewrefreshmode();
365   void set_viewrefreshmode(int viewrefreshmode);
366   bool has_viewrefreshmode();
367   void clear_viewrefreshmode();
368 
369   // <viewRefreshTime>
370   double get_viewrefreshtime();
371   void set_viewrefreshtime(double viewrefreshtime);
372   bool has_viewrefreshtime();
373   void clear_viewrefreshtime();
374 
375   // <viewBoundScale>
376   double get_viewboundscale();
377   void set_viewboundscale(double viewboundscale);
378   bool has_viewboundscale();
379   void clear_viewboundscale();
380 
381   // <viewFormat>
382   const std::string& get_viewformat();
383   void set_viewformat(const std::string& viewformat);
384   bool has_viewformat();
385   void clear_viewformat();
386 
387   // <httpQuery>
388   const std::string& get_httpquery();
389   void set_httpquery(const std::string& httpquery);
390   bool has_httpquery();
391   void clear_httpquery();
392 };
393 
394 %nodefaultctor IconStyleIcon;
395 class IconStyleIcon : public BasicLink {
396 public:
397   // <href>
398   const std::string& get_href();
399   bool has_href();
400   void set_href(const std::string& href);
401   void clear_href();
402 };
403 
404 %nodefaultctor Overlay;
405 class Overlay : public Feature {
406 public:
407   // <color>
408   const kmlbase::Color32& get_color();
409   void set_color(const kmlbase::Color32& color);
410   bool has_color();
411   void clear_color();
412 
413   // <drawOrder>
414   int get_draworder();
415   void set_draworder(int draworder);
416   bool has_draworder();
417   void clear_draworder();
418 
419   // <Icon>
420   const IconPtr get_icon();
421   void set_icon(IconPtr icon);
422   bool has_icon();
423   void clear_icon();
424 };
425 
426 %nodefaultctor BalloonStyle;
427 class BalloonStyle : public SubStyle {
428 public:
429   // <bgColor>
430   const kmlbase::Color32& get_bgcolor();
431   void set_bgcolor(const kmlbase::Color32& bgcolor);
432   bool has_bgcolor();
433   void clear_bgcolor();
434 
435   // <textColor>
436   const kmlbase::Color32& get_textcolor();
437   void set_textcolor(const kmlbase::Color32& textcolor);
438   bool has_textcolor();
439   void clear_textcolor();
440 
441   // <text>
442   const std::string& get_text();
443   void set_text(const std::string& text);
444   bool has_text();
445   void clear_text();
446 
447   // <displayMode>
448   int get_displaymode();
449   void set_displaymode(int displaymode);
450   bool has_displaymode();
451   void clear_displaymode();
452 };
453 
454 %nodefaultctor Camera;
455 class Camera : public AbstractView {
456 public:
457   // <longitude>
458   double get_longitude();
459   void set_longitude(double longitude);
460   bool has_longitude();
461   void clear_longitude();
462 
463   // <latitude>
464   double get_latitude();
465   void set_latitude(double latitude);
466   bool has_latitude();
467   void clear_latitude();
468 
469   // <altitude>
470   double get_altitude();
471   void set_altitude(double altitude);
472   bool has_altitude();
473   void clear_altitude();
474 
475   // <heading>
476   double get_heading();
477   void set_heading(double heading);
478   bool has_heading();
479   void clear_heading();
480 
481   // <tilt>
482   double get_tilt();
483   void set_tilt(double tilt);
484   bool has_tilt();
485   void clear_tilt();
486 
487   // <roll>
488   double get_roll();
489   void set_roll(double roll);
490   bool has_roll();
491   void clear_roll();
492 
493   // <altitudeMode>
494   int get_altitudemode();
495   void set_altitudemode(int altitudemode);
496   bool has_altitudemode();
497   void clear_altitudemode();
498 
499   // <gx:altitudeMode>
500   int get_gx_altitudemode();
501   bool has_gx_altitudemode();
502   void set_gx_altitudemode(int gx_altitudemode);
503   void clear_gx_altitudemode();
504 };
505 
506 %nodefaultctor UpdateOperation;
507 class UpdateOperation : public Element {
508 };
509 
510 %nodefaultctor Change;
511 class Change : public UpdateOperation {
512 public:
513   // Object...
514   void add_object(ObjectPtr object);
515   const size_t get_object_array_size();
516   const ObjectPtr get_object_array_at(unsigned int index);
517 };
518 
519 %nodefaultctor Create;
520 class Create : public UpdateOperation {
521 public:
522   // Container...
523   void add_container(ContainerPtr container);
524   const size_t get_container_array_size();
525   const ContainerPtr get_container_array_at(unsigned int index);
526 };
527 
528 %nodefaultctor Data;
529 class Data : public Object {
530 public:
531   // name=
532   const std::string& get_name();
533   bool has_name();
534   void set_name(const std::string& name);
535   void clear_name();
536 
537   // <displayname>
538   const std::string& get_displayname();
539   bool has_displayname();
540   void set_displayname(const std::string& displayname);
541   void clear_displayname();
542 
543   // <value>
544   const std::string& get_value();
545   bool has_value();
546   void set_value(const std::string& value);
547   void clear_value();
548 };
549 
550 %nodefaultctor Delete;
551 class Delete : public UpdateOperation {
552 public:
553   // Feature...
554   void add_feature(FeaturePtr feature);
555   const size_t get_feature_array_size();
556   const FeaturePtr get_feature_array_at(unsigned int index);
557 };
558 
559 %nodefaultctor SimpleField;
560 class SimpleField : public Element {
561 public:
562   // type=
563   const std::string& get_type();
564   bool has_type();
565   void set_type(const std::string& value);
566   void clear_type();
567 
568   // name=
569   const std::string& get_name();
570   bool has_name();
571   void set_name(const std::string& value);
572   void clear_name();
573 
574   // <displayName>
575   const std::string& get_displayname();
576   void set_displayname(const std::string& displayname);
577   bool has_displayname();
578   void clear_displayname();
579 };
580 
581 %nodefaultctor Schema;
582 class Schema : public Object {
583 public:
584   // name=
585   const std::string& get_name();
586   bool has_name();
587   void set_name(const std::string& value);
588   void clear_name();
589 
590   // <SimpleField>...
591   void add_simplefield(SimpleFieldPtr simplefield);
592   const size_t get_simplefield_array_size();
593   const SimpleFieldPtr get_simplefield_array_at(unsigned int index);
594 };
595 
596 %nodefaultctor Document;
597 class Document : public Container {
598 public:
599   // <Schema>...
600   void add_schema(SchemaPtr schema);
601   const size_t get_schema_array_size();
602   const SchemaPtr get_schema_array_at(unsigned int index);
603 
604   // <Style>,<StyleMap>...
605   void add_styleselector(StyleSelectorPtr styleselector);
606   const size_t get_styleselector_array_size();
607   const StyleSelectorPtr get_styleselector_array_at(unsigned int index);
608 };
609 
610 %nodefaultctor Folder;
611 class Folder : public Container {
612 };
613 
614 %nodefaultctor LatLonBox;
615 class LatLonBox : public AbstractLatLonBox {
616 public:
617   // <rotation>
618   double get_rotation();
619   void set_rotation(double rotation);
620   bool has_rotation();
621   void clear_rotation();
622 };
623 
624 %nodefaultctor GxLatLonQuad;
625 class GxLatLonQuad : public Object {
626 public:
627   // <coordinates>
628   const CoordinatesPtr get_coordinates();
629   bool has_coordinates();
630   void set_coordinates(const CoordinatesPtr& coordinates);
631   void clear_coordinates();
632 };
633 
634 %nodefaultctor GroundOverlay;
635 class GroundOverlay : public Overlay {
636 public:
637   // <altitude>
638   double get_altitude();
639   void set_altitude(double altitude);
640   bool has_altitude();
641   void clear_altitude();
642 
643   // <altitudeMode>
644   int get_altitudemode();
645   void set_altitudemode(int altitudemode);
646   bool has_altitudemode();
647   void clear_altitudemode();
648 
649   // <gx:altitudeMode>
650   int get_gx_altitudemode();
651   bool has_gx_altitudemode();
652   void set_gx_altitudemode(int gx_altitudemode);
653   void clear_gx_altitudemode();
654 
655   // <LatLonBox>
656   const LatLonBoxPtr get_latlonbox();
657   void set_latlonbox(LatLonBoxPtr latlonbox);
658   bool has_latlonbox();
659   void clear_latlonbox();
660 
661   // <gx:LatLonQuad>
662   const GxLatLonQuadPtr get_gx_latlonquad();
663   bool has_gx_latlonquad();
664   void set_gx_latlonquad(GxLatLonQuadPtr gx_latlonquad);
665   void clear_gx_latlonquad();
666 };
667 
668 %nodefaultctor HotSpot;
669 class HotSpot : public Vec2 {
670 };
671 
672 %nodefaultctor IconStyle;
673 class IconStyle : public ColorStyle {
674 public:
675   // <scale>
676   double get_scale();
677   void set_scale(double scale);
678   bool has_scale();
679   void clear_scale();
680 
681   // <Icon> (different from Overlay Icon)
682   const IconStyleIconPtr get_icon();
683   void set_icon(IconStyleIconPtr icon);
684   bool has_icon();
685   void clear_icon();
686 
687   // <heading>
688   double get_heading();
689   void set_heading(double heading);
690   bool has_heading();
691   void clear_heading();
692 
693   // <hotSpot>
694   const HotSpotPtr get_hotspot();
695   void set_hotspot(HotSpotPtr hotspot);
696   bool has_hotspot();
697   void clear_hotspot();
698 };
699 
700 %nodefaultctor ImagePyramid;
701 class ImagePyramid : public Object {
702 public:
703   // <tileSize>
704   int get_tilesize();
705   void set_tilesize(int tilesize);
706   bool has_tilesize();
707   void clear_tilesize();
708 
709   // <maxWidth>
710   int get_maxwidth();
711   void set_maxwidth(int maxwidth);
712   bool has_maxwidth();
713   void clear_maxwidth();
714 
715   // <maxHeight>
716   int get_maxheight();
717   void set_maxheight(int maxheight);
718   bool has_maxheight();
719   void clear_maxheight();
720 
721   // <gridOrigin>
722   int get_gridorigin();
723   void set_gridorigin(int gridorigin);
724   bool has_gridorigin();
725   void clear_gridorigin();
726 };
727 
728 %nodefaultctor ItemIcon;
729 class ItemIcon : public Object {
730 public:
731   // <state>
732   int get_state_array_at(unsigned int index);
733   const size_t get_state_array_size();
734   bool has_state();
735   void add_state(int state);
736   void clear_state();
737 
738   // <href>
739   const std::string& get_href();
740   void set_href(const std::string& href);
741   bool has_href();
742   void clear_href();
743 };
744 
745 %nodefaultctor LabelStyle;
746 class LabelStyle : public ColorStyle {
747 public:
748   // <scale>
749   double get_scale();
750   void set_scale(double scale);
751   bool has_scale();
752   void clear_scale();
753 };
754 
755 %nodefaultctor LineString;
756 class LineString : public Geometry {
757 public:
758   // <extrude>
759   bool get_extrude();
760   void set_extrude(bool extrude);
761   bool has_extrude();
762   void clear_extrude();
763 
764   // <tessellate>
765   bool get_tessellate();
766   void set_tessellate(bool tessellate);
767   bool has_tessellate();
768   void clear_tessellate();
769 
770   // <altitudeMode>
771   int get_altitudemode();
772   void set_altitudemode(int altitudemode);
773   bool has_altitudemode();
774   void clear_altitudemode();
775 
776   // <gx:altitudeMode>
777   int get_gx_altitudemode();
778   bool has_gx_altitudemode();
779   void set_gx_altitudemode(int gx_altitudemode);
780   void clear_gx_altitudemode();
781 
782   // <coordinates>
783   const CoordinatesPtr get_coordinates();
784   void set_coordinates(CoordinatesPtr coordinates);
785   bool has_coordinates();
786   void clear_coordinates();
787 };
788 
789 %nodefaultctor LineStyle;
790 class LineStyle : public ColorStyle {
791 public:
792   // <width>
793   double get_width();
794   void set_width(double width);
795   bool has_width();
796   void clear_width();
797 };
798 
799 %nodefaultctor LinearRing;
800 class LinearRing : public Geometry {
801 public:
802   // <extrude>
803   bool get_extrude();
804   void set_extrude(bool extrude);
805   bool has_extrude();
806   void clear_extrude();
807 
808   // <tessellate>
809   bool get_tessellate();
810   void set_tessellate(bool tessellate);
811   bool has_tessellate();
812   void clear_tessellate();
813 
814   // <altitudeMode>
815   int get_altitudemode();
816   void set_altitudemode(int altitudemode);
817   bool has_altitudemode();
818   void clear_altitudemode();
819 
820   // <gx:altitudeMode>
821   int get_gx_altitudemode();
822   bool has_gx_altitudemode();
823   void set_gx_altitudemode(int gx_altitudemode);
824   void clear_gx_altitudemode();
825 
826   // <coordinates>
827   const CoordinatesPtr get_coordinates();
828   void set_coordinates(CoordinatesPtr coordinates);
829   bool has_coordinates();
830   void clear_coordinates();
831 };
832 
833 %nodefaultctor Link;
834 class Link : public BasicLink {
835 public:
836   // <refreshMode>
837   int get_refreshmode();
838   void set_refreshmode(int refreshmode);
839   bool has_refreshmode();
840   void clear_refreshmode();
841 
842   // <refreshInterval>
843   double get_refreshinterval();
844   void set_refreshinterval(double refreshinterval);
845   bool has_refreshinterval();
846   void clear_refreshinterval();
847 
848   // <viewRefreshMode>
849   int get_viewrefreshmode();
850   void set_viewrefreshmode(int viewrefreshmode);
851   bool has_viewrefreshmode();
852   void clear_viewrefreshmode();
853 
854   // <viewRefreshTime>
855   double get_viewrefreshtime();
856   void set_viewrefreshtime(double viewrefreshtime);
857   bool has_viewrefreshtime();
858   void clear_viewrefreshtime();
859 
860   // <viewBoundScale>
861   double get_viewboundscale();
862   void set_viewboundscale(double viewboundscale);
863   bool has_viewboundscale();
864   void clear_viewboundscale();
865 
866   // <viewFormat>
867   const std::string& get_viewformat();
868   void set_viewformat(const std::string& viewformat);
869   bool has_viewformat();
870   void clear_viewformat();
871 
872   // <httpQuery>
873   const std::string& get_httpquery();
874   void set_httpquery(const std::string& httpquery);
875   bool has_httpquery();
876   void clear_httpquery();
877 };
878 
879 %nodefaultctor ListStyle;
880 class ListStyle : public SubStyle {
881 public:
882   // <listItemType>
883   int get_listitemtype();
884   void set_listitemtype(int listitemtype);
885   bool has_listitemtype();
886   void clear_listitemtype();
887 
888   // <bgColor>
889   const kmlbase::Color32& get_bgcolor();
890   void set_bgcolor(const kmlbase::Color32& bgcolor);
891   bool has_bgcolor();
892   void clear_bgcolor();
893 
894   // <ItemIcon>...
895   void add_itemicon(ItemIconPtr itemicon);
896   const size_t get_itemicon_array_size();
897   const ItemIconPtr get_itemicon_array_at(unsigned int index);
898 };
899 
900 %nodefaultctor Location;
901 class Location : public Object {
902 public:
903   // <longitude>
904   double get_longitude();
905   void set_longitude(double longitude);
906   bool has_longitude();
907   void clear_longitude();
908 
909   // <latitude>
910   double get_latitude();
911   void set_latitude(double latitude);
912   bool has_latitude();
913   void clear_latitude();
914 
915   // <altitude>
916   double get_altitude();
917   void set_altitude(double altitude);
918   bool has_altitude();
919   void clear_altitude();
920 };
921 
922 %nodefaultctor LookAt;
923 class LookAt : public AbstractView {
924 public:
925   // <longitude>
926   double get_longitude();
927   void set_longitude(double longitude);
928   bool has_longitude();
929   void clear_longitude();
930 
931   // <latitude>
932   double get_latitude();
933   void set_latitude(double latitude);
934   bool has_latitude();
935   void clear_latitude();
936 
937   // <altitude>
938   double get_altitude();
939   void set_altitude(double altitude);
940   bool has_altitude();
941   void clear_altitude();
942 
943   // <heading>
944   double get_heading();
945   void set_heading(double heading);
946   bool has_heading();
947   void clear_heading();
948 
949   // <tilt>
950   double get_tilt();
951   void set_tilt(double tilt);
952   bool has_tilt();
953   void clear_tilt();
954 
955   // <range>
956   double get_range();
957   void set_range(double range);
958   bool has_range();
959   void clear_range();
960 
961   // <altitudeMode>
962   int get_altitudemode();
963   void set_altitudemode(int altitudemode);
964   bool has_altitudemode();
965   void clear_altitudemode();
966 
967   // <gx:altitudeMode>
968   int get_gx_altitudemode();
969   bool has_gx_altitudemode();
970   void set_gx_altitudemode(int gx_altitudemode);
971   void clear_gx_altitudemode();
972 };
973 
974 %nodefaultctor Orientation;
975 class Orientation : public Object {
976 public:
977   // <heading>
978   double get_heading();
979   void set_heading(double heading);
980   bool has_heading();
981   void clear_heading();
982 
983   // <tilt>
984   double get_tilt();
985   void set_tilt(double tilt);
986   bool has_tilt();
987   void clear_tilt();
988 
989   // <roll>
990   double get_roll();
991   void set_roll(double roll);
992   bool has_roll();
993   void clear_roll();
994 };
995 
996 %nodefaultctor Scale;
997 class Scale : public Object {
998 public:
999   // <x>
1000   double get_x();
1001   void set_x(double x);
1002   bool has_x();
1003   void clear_x();
1004 
1005   // <y>
1006   double get_y();
1007   void set_y(double y);
1008   bool has_y();
1009   void clear_y();
1010 
1011   // <z>
1012   double get_z();
1013   void set_z(double z);
1014   bool has_z();
1015   void clear_z();
1016 };
1017 
1018 %nodefaultctor Alias;
1019 class Alias : public Object {
1020 public:
1021   // <targetHref>
1022   const std::string& get_targethref();
1023   void set_targethref(const std::string& targethref);
1024   bool has_targethref();
1025   void clear_targethref();
1026 
1027   // <sourceHref>
1028   const std::string& get_sourcehref();
1029   void set_sourcehref(const std::string& sourcehref);
1030   bool has_sourcehref();
1031   void clear_sourcehref();
1032 };
1033 
1034 %nodefaultctor ResourceMap;
1035 class ResourceMap : public Object {
1036 public:
1037   // <Alias>...
1038   void add_alias(AliasPtr alias);
1039   const size_t get_alias_array_size();
1040   const AliasPtr get_alias_array_at(unsigned int index);
1041 };
1042 
1043 %nodefaultctor Model;
1044 class Model : public Geometry {
1045 public:
1046   // <altitudeMode>
1047   int get_altitudemode();
1048   void set_altitudemode(int altitudemode);
1049   bool has_altitudemode();
1050   void clear_altitudemode();
1051 
1052   // <gx:altitudeMode>
1053   int get_gx_altitudemode();
1054   bool has_gx_altitudemode();
1055   void set_gx_altitudemode(int gx_altitudemode);
1056   void clear_gx_altitudemode();
1057 
1058   // <Location>
1059   const LocationPtr get_location();
1060   void set_location(LocationPtr location);
1061   bool has_location();
1062   void clear_location();
1063 
1064   // <Orientation>
1065   const OrientationPtr get_orientation();
1066   void set_orientation(OrientationPtr orientation);
1067   bool has_orientation();
1068   void clear_orientation();
1069 
1070   // <Scale>
1071   const ScalePtr get_scale();
1072   void set_scale(ScalePtr scale);
1073   bool has_scale();
1074   void clear_scale();
1075 
1076   // <Link>
1077   const LinkPtr get_link();
1078   void set_link(LinkPtr link);
1079   bool has_link();
1080   void clear_link();
1081 
1082   // <ResourceMap>
1083   const ResourceMapPtr get_resourcemap();
1084   void set_resourcemap(ResourceMapPtr resourcemap);
1085   bool has_resourcemap();
1086   void clear_resourcemap();
1087 };
1088 
1089 %nodefaultctor MultiGeometry;
1090 class MultiGeometry : public Geometry {
1091 public:
1092   // Geometry...
1093   void add_geometry(GeometryPtr geometry);
1094   const size_t get_geometry_array_size();
1095   const GeometryPtr get_geometry_array_at(unsigned int index);
1096 };
1097 
1098 %nodefaultctor NetworkLink;
1099 class NetworkLink : public Feature {
1100 public:
1101   // <refreshVisibility>
1102   bool get_refreshvisibility();
1103   void set_refreshvisibility(bool refreshvisibility);
1104   bool has_refreshvisibility();
1105   void clear_refreshvisibility();
1106 
1107   // <flyToView>
1108   bool get_flytoview();
1109   void set_flytoview(bool flytoview);
1110   bool has_flytoview();
1111   void clear_flytoview();
1112 
1113   // <Link>
1114   const LinkPtr get_link();
1115   void set_link(LinkPtr link);
1116   bool has_link();
1117   void clear_link();
1118 };
1119 
1120 %nodefaultctor Update;
1121 class Update : public Element {
1122 public:
1123   // <targetHref>
1124   const std::string& get_targethref();
1125   bool has_targethref();
1126   void set_targethref(const std::string& targethref);
1127   void clear_targethref();
1128 
1129   // <Change>,<Create>,<Delete>...
1130   void add_updateoperation(UpdateOperationPtr updateoperation);
1131   const size_t get_updateoperation_array_size();
1132   const UpdateOperationPtr get_updateoperation_array_at(unsigned int index);
1133 };
1134 
1135 %nodefaultctor NetworkLinkControl;
1136 class NetworkLinkControl : public Element {
1137 public:
1138   // <minRefreshPeriod>
1139   double get_minrefreshperiod();
1140   void set_minrefreshperiod(double minrefreshperiod);
1141   bool has_minrefreshperiod();
1142   void clear_minrefreshperiod();
1143 
1144   // <maxSessionLength>
1145   double get_maxsessionlength();
1146   void set_maxsessionlength(double maxsessionlength);
1147   bool has_maxsessionlength();
1148   void clear_maxsessionlength();
1149 
1150   // <cookie>
1151   const std::string& get_cookie();
1152   void set_cookie(const std::string& cookie);
1153   bool has_cookie();
1154   void clear_cookie();
1155 
1156   // <message>
1157   const std::string& get_message();
1158   void set_message(const std::string& message);
1159   bool has_message();
1160   void clear_message();
1161 
1162   // <linkName>
1163   const std::string& get_linkname();
1164   void set_linkname(const std::string& linkname);
1165   bool has_linkname();
1166   void clear_linkname();
1167 
1168   // <linkDescription>
1169   const std::string& get_linkdescription();
1170   void set_linkdescription(const std::string& linkdescription);
1171   bool has_linkdescription();
1172   void clear_linkdescription();
1173 
1174   // <linkSnippet>
1175   const LinkSnippetPtr get_linksnippet();
1176   void set_linksnippet(LinkSnippetPtr linksnippet);
1177   bool has_linksnippet();
1178   void clear_linksnippet();
1179 
1180   // <expires>
1181   const std::string& get_expires();
1182   void set_expires(const std::string& expires);
1183   bool has_expires();
1184   void clear_expires();
1185 
1186   // <Update>
1187   const UpdatePtr get_update();
1188   void set_update(UpdatePtr update);
1189   bool has_update();
1190   void clear_update();
1191 
1192   // AbstractView
1193   const AbstractViewPtr get_abstractview();
1194   void set_abstractview(AbstractViewPtr abstractview);
1195   bool has_abstractview();
1196   void clear_abstractview();
1197 };
1198 
1199 %nodefaultctor Pair;
1200 class Pair : public Object {
1201 public:
1202   // <key>
1203   int get_key();
1204   void set_key(int key);
1205   bool has_key();
1206   void clear_key();
1207 
1208   // <styleUrl>
1209   const std::string& get_styleurl();
1210   void set_styleurl(const std::string& styleurl);
1211   bool has_styleurl();
1212   void clear_styleurl();
1213 
1214   // <StyleSelector>
1215   const StyleSelectorPtr get_styleselector();
1216   void set_styleselector(StyleSelectorPtr styleselector);
1217   bool has_styleselector();
1218   void clear_styleselector();
1219 };
1220 
1221 %nodefaultctor ViewVolume;
1222 class ViewVolume : public Object {
1223 public:
1224   // <leftFov>
1225   double get_leftfov();
1226   void set_leftfov(double leftfov);
1227   bool has_leftfov();
1228   void clear_leftfov();
1229 
1230   // <rightFov>
1231   double get_rightfov();
1232   void set_rightfov(double rightfov);
1233   bool has_rightfov();
1234   void clear_rightfov();
1235 
1236   // <bottomFov>
1237   double get_bottomfov();
1238   void set_bottomfov(double bottomfov);
1239   bool has_bottomfov();
1240   void clear_bottomfov();
1241 
1242   // <topFov>
1243   double get_topfov();
1244   void set_topfov(double topfov);
1245   bool has_topfov();
1246   void clear_topfov();
1247 
1248   // <near>
1249   double get_near();
1250   void set_near(double val);
1251   bool has_near();
1252   void clear_near();
1253 };
1254 
1255 %nodefaultctor Point;
1256 class Point : public Geometry {
1257 public:
1258   // <extrude>
1259   bool get_extrude();
1260   void set_extrude(bool extrude);
1261   bool has_extrude();
1262   void clear_extrude();
1263 
1264   // <altitudeMode>
1265   int get_altitudemode();
1266   void set_altitudemode(int altitudemode);
1267   bool has_altitudemode();
1268   void clear_altitudemode();
1269 
1270   // <gx:altitudeMode>
1271   int get_gx_altitudemode();
1272   bool has_gx_altitudemode();
1273   void set_gx_altitudemode(int gx_altitudemode);
1274   void clear_gx_altitudemode();
1275 
1276   // <coordinates>
1277   const CoordinatesPtr get_coordinates();
1278   void set_coordinates(CoordinatesPtr coordinates);
1279   bool has_coordinates();
1280   void clear_coordinates();
1281 };
1282 
1283 %nodefaultctor PhotoOverlay;
1284 class PhotoOverlay : public Overlay {
1285 public:
1286   // <rotation>
1287   double get_rotation();
1288   void set_rotation(double rotation);
1289   bool has_rotation();
1290   void clear_rotation();
1291 
1292   // <ViewVolume>
1293   const ViewVolumePtr get_viewvolume();
1294   void set_viewvolume(ViewVolumePtr viewvolume);
1295   bool has_viewvolume();
1296   void clear_viewvolume();
1297 
1298   // <ImagePyramid>
1299   const ImagePyramidPtr get_imagepyramid();
1300   void set_imagepyramid(ImagePyramidPtr imagepyramid);
1301   bool has_imagepyramid();
1302   void clear_imagepyramid();
1303 
1304   // <Point>
1305   const PointPtr get_point();
1306   void set_point(PointPtr point);
1307   bool has_point();
1308   void clear_point();
1309 
1310   // <shape>
1311   int get_shape();
1312   bool has_shape();
1313   void set_shape(int shape);
1314   void clear_shape();
1315 };
1316 
1317 %nodefaultctor Placemark;
1318 class Placemark : public Feature {
1319 public:
1320   // Geometry
1321   const GeometryPtr get_geometry();
1322   void set_geometry(GeometryPtr geometry);
1323   bool has_geometry();
1324   void clear_geometry();
1325 };
1326 
1327 %nodefaultctor PolyStyle;
1328 class PolyStyle : public ColorStyle {
1329 public:
1330   // <fill>
1331   bool get_fill();
1332   void set_fill(bool fill);
1333   bool has_fill();
1334   void clear_fill();
1335 
1336   // <outline>
1337   bool get_outline();
1338   void set_outline(bool outline);
1339   bool has_outline();
1340   void clear_outline();
1341 };
1342 
1343 %nodefaultctor OuterBoundaryIs;
1344 class OuterBoundaryIs : public Element {
1345 public:
1346   // <LinearRing>
1347   const LinearRingPtr get_linearring();
1348   void set_linearring(LinearRingPtr linearring);
1349   bool has_linearring();
1350   void clear_linearring();
1351 };
1352 
1353 %nodefaultctor InnerBoundaryIs;
1354 class InnerBoundaryIs : public Element {
1355 public:
1356   // <LinearRing>
1357   const LinearRingPtr get_linearring();
1358   void set_linearring(LinearRingPtr linearring);
1359   bool has_linearring();
1360   void clear_linearring();
1361 };
1362 
1363 %nodefaultctor Polygon;
1364 class Polygon : public Geometry {
1365 public:
1366   // <extrude>
1367   bool get_extrude();
1368   void set_extrude(bool extrude);
1369   bool has_extrude();
1370   void clear_extrude();
1371 
1372   // <tessellate>
1373   bool get_tessellate();
1374   void set_tessellate(bool tessellate);
1375   bool has_tessellate();
1376   void clear_tessellate();
1377 
1378   // <altitudeMode>
1379   int get_altitudemode();
1380   void set_altitudemode(int altitudemode);
1381   bool has_altitudemode();
1382   void clear_altitudemode();
1383 
1384   // <gx:altitudeMode>
1385   int get_gx_altitudemode();
1386   bool has_gx_altitudemode();
1387   void set_gx_altitudemode(int gx_altitudemode);
1388   void clear_gx_altitudemode();
1389 
1390   // <outerBoundaryIs>
1391   const OuterBoundaryIsPtr get_outerboundaryis();
1392   void set_outerboundaryis(OuterBoundaryIsPtr outerboundaryis);
1393   bool has_outerboundaryis();
1394   void clear_outerboundaryis();
1395 
1396   // <innerBoundaryIs>...
1397   void add_innerboundaryis(InnerBoundaryIsPtr innerboundaryis);
1398   const size_t get_innerboundaryis_array_size();
1399   const InnerBoundaryIsPtr get_innerboundaryis_array_at(unsigned int index);
1400 };
1401 
1402 %nodefaultctor SimpleData;
1403 class SimpleData : public Element {
1404 public:
1405   // name=
1406   const std::string& get_name();
1407   bool has_name();
1408   void set_name(const std::string& value);
1409   void clear_name();
1410 
1411   // char data
1412   const std::string& get_text();
1413   bool has_text();
1414   void set_text(const std::string& value);
1415   void clear_text();
1416 };
1417 
1418 %nodefaultctor SchemaData;
1419 class SchemaData : public Object {
1420 public:
1421   // schemaUrl=
1422   const std::string& get_schemaurl();
1423   bool has_schemaurl();
1424   void set_schemaurl(const std::string& value);
1425   void clear_schemaurl();
1426   // <SimpleData>...
1427   void add_simpledata(SimpleDataPtr simpledata);
1428   const size_t get_simpledata_array_size();
1429   const SimpleDataPtr get_simpledata_array_at(unsigned int index);
1430 };
1431 
1432 %nodefaultctor OverlayXY;
1433 class OverlayXY : public Vec2 {
1434 };
1435 
1436 %nodefaultctor ScreenXY;
1437 class ScreenXY : public Vec2 {
1438 };
1439 
1440 %nodefaultctor RotationXY;
1441 class RotationXY : public Vec2 {
1442 };
1443 
1444 %nodefaultctor Size;
1445 class Size : public Vec2 {
1446 };
1447 
1448 %nodefaultctor ScreenOverlay;
1449 class ScreenOverlay : public Overlay {
1450 public:
1451   // <OverlayXY>
1452   const OverlayXYPtr get_overlayxy();
1453   void set_overlayxy(OverlayXYPtr overlayxy);
1454   bool has_overlayxy();
1455   void clear_overlayxy();
1456 
1457   // <ScreenXY>
1458   const ScreenXYPtr get_screenxy();
1459   void set_screenxy(ScreenXYPtr screenxy);
1460   bool has_screenxy();
1461   void clear_screenxy();
1462 
1463   // <RotationXY>
1464   const RotationXYPtr get_rotationxy();
1465   void set_rotationxy(RotationXYPtr rotationxy);
1466   bool has_rotationxy();
1467   void clear_rotationxy();
1468 
1469   // <size>
1470   const SizePtr get_size();
1471   void set_size(SizePtr size);
1472   bool has_size();
1473   void clear_size();
1474 
1475   // <rotation>
1476   double get_rotation();
1477   void set_rotation(double rotation);
1478   bool has_rotation();
1479   void clear_rotation();
1480 };
1481 
1482 %nodefaultctor Style;
1483 class Style : public StyleSelector {
1484 public:
1485   // <IconStyle>
1486   const IconStylePtr get_iconstyle();
1487   void set_iconstyle(IconStylePtr iconstyle);
1488   bool has_iconstyle();
1489   void clear_iconstyle();
1490 
1491   // <LabelStyle>
1492   const LabelStylePtr get_labelstyle();
1493   void set_labelstyle(LabelStylePtr labelstyle);
1494   bool has_labelstyle();
1495   void clear_labelstyle();
1496 
1497   // <LineStyle>
1498   const LineStylePtr get_linestyle();
1499   void set_linestyle(LineStylePtr linestyle);
1500   bool has_linestyle();
1501   void clear_linestyle();
1502 
1503   // <PolyStyle>
1504   const PolyStylePtr get_polystyle();
1505   void set_polystyle(PolyStylePtr polystyle);
1506   bool has_polystyle();
1507   void clear_polystyle();
1508 
1509   // <BalloonStyle>
1510   const BalloonStylePtr get_balloonstyle();
1511   void set_balloonstyle(BalloonStylePtr balloonstyle);
1512   bool has_balloonstyle();
1513   void clear_balloonstyle();
1514 
1515   // <ListStyle>
1516   const ListStylePtr get_liststyle();
1517   void set_liststyle(ListStylePtr liststyle);
1518   bool has_liststyle();
1519   void clear_liststyle();
1520 };
1521 
1522 %nodefaultctor StyleMap;
1523 class StyleMap : public StyleSelector {
1524 public:
1525   // <Pair>...
1526   void add_pair(PairPtr pair);
1527   const size_t get_pair_array_size();
1528   const PairPtr get_pair_array_at(unsigned int index);
1529 };
1530 
1531 %nodefaultctor TimeSpan;
1532 class TimeSpan : public TimePrimitive {
1533 public:
1534   // <begin>
1535   const std::string& get_begin();
1536   void set_begin(const std::string& begin);
1537   bool has_begin();
1538   void clear_begin();
1539 
1540   // <end>
1541   const std::string& get_end();
1542   void set_end(const std::string& end);
1543   bool has_end();
1544   void clear_end();
1545 };
1546 
1547 %nodefaultctor GxTimeSpan;
1548 class GxTimeSpan : public TimeSpan {
1549 };
1550 
1551 %nodefaultctor TimeStamp;
1552 class TimeStamp : public TimePrimitive {
1553 public:
1554   // <when>
1555   const std::string& get_when();
1556   void set_when(const std::string& when);
1557   bool has_when();
1558   void clear_when();
1559 };
1560 
1561 %nodefaultctor GxTimeStamp;
1562 class GxTimeStamp : public TimeStamp {
1563 };
1564 
1565 %nodefaultctor Kml;
1566 class Kml : public Element {
1567 public:
1568   // hint=
1569   const std::string& get_hint();
1570   void set_hint(const std::string& hint);
1571   bool has_hint();
1572   void clear_hint();
1573 
1574   // <NetworkLinkControl>
1575   const NetworkLinkControlPtr get_networklinkcontrol();
1576   void set_networklinkcontrol(NetworkLinkControlPtr networklinkcontrol);
1577   bool has_networklinkcontrol();
1578   void clear_networklinkcontrol();
1579 
1580   // Feature
1581   const FeaturePtr get_feature();
1582   void set_feature(FeaturePtr feature);
1583   bool has_feature();
1584   void clear_feature();
1585 };
1586 
1587 // <atom:author>
1588 %nodefaultctor AtomAuthor;
1589 class AtomAuthor : public Element {
1590 public:
1591   // <atom:name>
1592   const std::string& get_name();
1593   void set_name(const std::string& name);
1594   bool has_name();
1595   void clear_name();
1596 
1597   // <atom:uri>
1598   const std::string& get_uri();
1599   void set_uri(const std::string& uri);
1600   bool has_uri();
1601   void clear_uri();
1602 
1603   // <atom:email>
1604   const std::string& get_email();
1605   void set_email(const std::string& email);
1606   bool has_email();
1607   void clear_email();
1608 };
1609 
1610 // <atom:link>
1611 %nodefaultctor AtomLink;
1612 class AtomLink : public Element {
1613 public:
1614    // href=, RFC 4287 4.2.7.1, RFC 3987
1615   const std::string& get_href();
1616   bool has_href();
1617   void set_href(const std::string& value);
1618   void clear_href();
1619 
1620   // rel=, RFC 4287 4.2.7.2, RFC 3987
1621   const std::string& get_rel();
1622   bool has_rel();
1623   void set_rel(const std::string& value);
1624   void clear_rel();
1625 
1626   // type=, RFC 4287 4.2.7.3, MIME
1627   const std::string& get_type();
1628   bool has_type();
1629   void set_type(const std::string& value);
1630   void clear_type();
1631 
1632   // hreflang=, RFC 4287 4.2.7.4, RFC 3066
1633   const std::string& get_hreflang();
1634   bool has_hreflang();
1635   void set_hreflang(const std::string& value);
1636   void clear_hreflang();
1637 
1638   // title=, RFC 4287 4.2.7.5
1639   const std::string& get_title();
1640   bool has_title();
1641   void set_title(const std::string& value);
1642   void clear_title();
1643 
1644   // length=, RFC 4287 4.2.7.6
1645   const int get_length();
1646   bool has_length();
1647   void set_length(int value);
1648   void clear_length();
1649 };
1650 
1651 // GxTourPrimitive is an abstract base type.  This corresponds to
1652 // gx:AbstractGxTourPrimitiveType/Group in KML 2.2 gx.
1653 %nodefaultctor GxTourPrimitive;
1654 class GxTourPrimitive : public Object {
1655 };
1656 
1657 // <gx:Playlist>
1658 %nodefaultctor GxPlaylist;
1659 class GxPlaylist : public Object {
1660   // GxTourPrimitive...
1661  public:
1662   void add_gx_tourprimitive(GxTourPrimitivePtr tourprimitive);
1663   const size_t get_gx_tourprimitive_array_size();
1664   const GxTourPrimitivePtr get_gx_tourprimitive_array_at(unsigned int index);
1665 };
1666 
1667 // <gx:Tour>
1668 %nodefaultctor GxTour;
1669 class GxTour : public Feature {
1670  public:
1671   // <gx:Playlist>
1672   const GxPlaylistPtr get_gx_playlist();
1673   bool has_gx_playlist();
1674   void set_gx_playlist(GxPlaylistPtr gx_playlist);
1675   void clear_gx_playlist();
1676 };
1677 
1678 // <gx:AnimatedUpdate>
1679 %nodefaultctor GxAnimatedUpdate;
1680 class GxAnimatedUpdate : public GxTourPrimitive {
1681 public:
1682   //  <gx:duration>
1683   double get_gx_duration();
1684   bool has_gx_duration();
1685   void set_gx_duration(double gx_duration);
1686   void clear_gx_duration();
1687 
1688   // <Update>
1689   const UpdatePtr get_update();
1690   bool has_update();
1691   void set_update(UpdatePtr update);
1692   void clear_update();
1693 };
1694 
1695 // <gx:FlyTo>
1696 %nodefaultctor GxFlyTo;
1697 class GxFlyTo : public GxTourPrimitive {
1698  public:
1699   //  <gx:duration>
1700   double get_gx_duration();
1701   bool has_gx_duration();
1702   void set_gx_duration(double gx_duration);
1703   void clear_gx_duration();
1704 
1705   // <gx:flyToMode>.
1706   int get_gx_flytomode();
1707   bool has_gx_flytomode();
1708   void set_gx_flytomode(int value);
1709   void clear_gx_flytomode();
1710 
1711   // AbstractView
1712   const AbstractViewPtr get_abstractview();
1713   bool has_abstractview();
1714   void set_abstractview(AbstractViewPtr abstractview);
1715   void clear_abstractview();
1716 };
1717 
1718 // <gx:Wait>
1719 %nodefaultctor GxWait;
1720 class GxWait : public GxTourPrimitive {
1721 public:
1722   //  <gx:duration>
1723   double get_gx_duration();
1724   bool has_gx_duration();
1725   void set_gx_duration(double gx_duration);
1726   void clear_gx_duration();
1727 };
1728 
1729 // <gx:SoundCue>
1730 %nodefaultctor GxSoundCue;
1731 class GxSoundCue : public GxTourPrimitive {
1732 public:
1733   // <href>
1734   const std::string& get_href();
1735   bool has_href();
1736   void set_href(const std::string& href);
1737   void clear_href();
1738 };
1739 
1740 // <gx:TourControl>
1741 %nodefaultctor GxTourControl;
1742 class GxTourControl : public GxTourPrimitive {
1743 public:
1744   // <gx:playMode>
1745   int get_gx_playmode();
1746   bool has_gx_playmode();
1747   void set_gx_playmode(int value);
1748   void clear_gx_playmode();
1749 };
1750 
1751