uddf 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -61,140 +61,6 @@ module UDDF
61
61
  content :value, Float
62
62
  end
63
63
 
64
- class Manufacturer
65
- include HappyMapper
66
-
67
- tag "manufacturer"
68
-
69
- attribute :id, String
70
- has_one :address, Base::Models::Address
71
- has_many :alias_names, String, tag: "aliasname"
72
- has_one :contact, Base::Models::Contact
73
- has_one :name, String
74
- end
75
-
76
- class Link
77
- include HappyMapper
78
-
79
- tag "link"
80
-
81
- attribute :ref, String
82
- end
83
-
84
- class Generator
85
- include HappyMapper
86
-
87
- tag "generator"
88
-
89
- has_many :alias_names, String, tag: "aliasname"
90
- has_one :datetime, DateTime
91
- has_many :links, Link, tag: "link"
92
- has_one :name, String
93
- has_one :type, String
94
- has_one :version, String
95
- end
96
-
97
- class Notes
98
- include HappyMapper
99
-
100
- tag "notes"
101
-
102
- has_many :paras, String, tag: "para"
103
- has_many :links, Link, tag: "link"
104
- end
105
-
106
- class Price
107
- include HappyMapper
108
-
109
- tag "price"
110
-
111
- attribute :currency, String
112
- content :value, Float
113
- end
114
-
115
- class Tissue
116
- include HappyMapper
117
-
118
- tag "tissue"
119
-
120
- attribute :gas, String
121
- attribute :half_life, Float
122
- attribute :number, Integer
123
- attribute :a, Float
124
- attribute :b, Float
125
- end
126
-
127
- class VPM
128
- include HappyMapper
129
-
130
- tag "vpm"
131
-
132
- attribute :id, String
133
- has_one :conservatism, Float
134
- has_one :gamma, Float
135
- has_one :gc, Float
136
- has_one :lambda, Float
137
- has_one :r0, Float
138
- has_many :tissues, Tissue, tag: "tissue"
139
- end
140
-
141
- class RGBM
142
- include HappyMapper
143
-
144
- tag "rgbm"
145
-
146
- attribute :id, String
147
- has_many :tissues, Tissue, tag: "tissue"
148
- end
149
-
150
- class Buehlmann
151
- include HappyMapper
152
-
153
- tag "buehlmann"
154
-
155
- attribute :id, String
156
- has_one :gradient_factor_high, Float, tag: "gradientfactorhigh"
157
- has_one :gradient_factor_low, Float, tag: "gradientfactorlow"
158
- has_many :tissues, Tissue, tag: "tissue"
159
- end
160
-
161
- class DecoModel
162
- include HappyMapper
163
-
164
- tag "decomodel"
165
-
166
- has_many :buehlmanns, Buehlmann, tag: "buehlmann"
167
- has_many :rgbms, RGBM, tag: "rbgm"
168
- has_many :vpms, VPM, tag: "vpm"
169
- end
170
-
171
- class Mix
172
- include HappyMapper
173
-
174
- tag "mix"
175
-
176
- attribute :id, String
177
- has_many :alias_names, String, tag: "aliasname"
178
- has_one :ar, Float
179
- has_one :equivalent_air_depth, Float, tag: "equivalentairdepth"
180
- has_one :h2, Float
181
- has_one :he, Float
182
- has_one :maximum_operation_depth, Float, tag: "maximumoperationdepth"
183
- has_one :maximum_po2, Float, tag: "maximumpo2"
184
- has_one :n2, Float
185
- has_one :name, String
186
- has_one :o2, Float
187
- has_one :price_per_litre, Price, tag: "priceperlitre"
188
- end
189
-
190
- class GasDefinitions
191
- include HappyMapper
192
-
193
- tag "gasdefinitions"
194
-
195
- has_many :mixes, Mix, tag: "mix"
196
- end
197
-
198
64
  class WayAltitude
199
65
  include HappyMapper
200
66
 
@@ -387,26 +253,10 @@ module UDDF
387
253
  has_many :infos, Info, tag: "info"
388
254
  has_many :ppco2s, PPCo2, tag: "ppco2"
389
255
  has_many :scrubbers, Scrubber, tag: "scrubber"
390
- end
391
-
392
- class Medicine
393
- include HappyMapper
394
-
395
- tag "medicine"
396
-
397
- has_many :alias_names, String, tag: "aliasname"
398
- has_one :name, String
399
- has_one :notes, Notes
400
- has_one :periodically_taken, String, tag: "periodicallytaken"
401
- has_one :timespan_before_dive, Float, tag: "timespanbeforedive"
402
- end
403
-
404
- class MedicationBeforeDive
405
- include HappyMapper
406
-
407
- tag "medicationbeforedive"
408
-
409
- has_many :medicines, Medicine, tag: "medicine"
256
+ # Added in v3.2.2
257
+ has_one :body_temperature, Float, tag: "bodytemperature"
258
+ has_one :pulse_rate, Float, tag: "pulserate"
259
+ has_many :set_markers, String, tag: "setmarker"
410
260
  end
411
261
 
412
262
  class PlannedProfile
@@ -419,33 +269,13 @@ module UDDF
419
269
  has_many :waypoints, Waypoint, tag: "waypoint"
420
270
  end
421
271
 
422
- class Drink
423
- include HappyMapper
424
-
425
- tag "drink"
426
-
427
- has_many :alias_names, String, tag: "aliasname"
428
- has_one :name, String
429
- has_one :notes, Notes
430
- has_one :periodically_taken, String, tag: "periodicallytaken"
431
- has_one :timespan_before_dive, Float, tag: "timespanbeforedive"
432
- end
433
-
434
- class AlcoholBeforeDive
435
- include HappyMapper
436
-
437
- tag "alcoholbeforedive"
438
-
439
- has_many :drinks, Drink, tag: "drink"
440
- end
441
-
442
272
  class InformationBeforeDive
443
273
  include HappyMapper
444
274
 
445
275
  tag "informationbeforedive"
446
276
 
447
277
  has_one :air_temperature, Float, tag: "airtemperature"
448
- has_one :alcohol_before_dive, AlcoholBeforeDive, tag: "alcoholbeforedive"
278
+ has_one :alcohol_before_dive, Base::Models::AlcoholBeforeDive, tag: "alcoholbeforedive"
449
279
  has_one :altitude, Float
450
280
  has_one :apparatus, String
451
281
  has_one :datetime, DateTime
@@ -453,12 +283,12 @@ module UDDF
453
283
  has_one :dive_number, Integer, tag: "divenumber"
454
284
  has_one :dive_number_of_day, Integer, tag: "divenumberofday"
455
285
  has_one :internal_dive_number, Integer, tag: "internaldivenumber"
456
- has_many :links, Link, tag: "link"
457
- has_one :medication_before_dive, MedicationBeforeDive, tag: "medicationbeforedive"
286
+ has_many :links, Base::Models::Link, tag: "link"
287
+ has_one :medication_before_dive, Base::Models::MedicationBeforeDive, tag: "medicationbeforedive"
458
288
  has_one :no_suit, String, tag: "nosuit"
459
289
  has_one :planned_profile, PlannedProfile, tag: "plannedprofile"
460
290
  has_one :platform, String
461
- has_one :price, Price
291
+ has_one :price, Base::Models::Price
462
292
  has_one :purpose, String
463
293
  has_many :rebreather_self_tests, RebreatherSelfTest, tag: "rebreatherselftest"
464
294
  has_one :state_of_rest_before_dive, String, tag: "stateofrestbeforedive"
@@ -469,15 +299,6 @@ module UDDF
469
299
  has_many :timers, Timer, tag: "timer"
470
300
  end
471
301
 
472
- class Rating
473
- include HappyMapper
474
-
475
- tag "rating"
476
-
477
- has_one :datetime, DateTime
478
- has_one :rating_value, Integer, tag: "ratingvalue"
479
- end
480
-
481
302
  class GlobalAlarmsGiven
482
303
  include HappyMapper
483
304
 
@@ -492,113 +313,7 @@ module UDDF
492
313
  tag "equipmentused"
493
314
 
494
315
  has_one :lead_quantity, Float, tag: "leadquantity"
495
- has_many :links, Link, tag: "link"
496
- end
497
-
498
- class AnySymptoms
499
- include HappyMapper
500
-
501
- tag "anysymptoms"
502
-
503
- has_one :notes, Notes
504
- end
505
-
506
- class Abundance
507
- include HappyMapper
508
-
509
- tag "abundance"
510
-
511
- attribute :quality, String
512
- attribute :occurrence, String
513
- content :value, Integer
514
- end
515
-
516
- class Species
517
- include HappyMapper
518
-
519
- tag "species"
520
-
521
- attribute :id, String
522
- has_one :abundance, Abundance
523
- has_one :age, Integer
524
- has_one :dominance, String
525
- has_one :life_stage, String, tag: "lifestage"
526
- has_one :notes, Notes
527
- has_one :scientific_name, String, tag: "scientificname"
528
- has_one :sex, String
529
- has_one :size, Float
530
- has_one :trivial_name, String, tag: "trivialname"
531
- end
532
-
533
- class WithSpecies
534
- include HappyMapper
535
-
536
- has_many :species, Species, tag: "species"
537
- end
538
-
539
- class Invertebrata
540
- include HappyMapper
541
-
542
- tag "invertebrata"
543
-
544
- has_one :ascidiacea, WithSpecies
545
- has_one :bryozoan, WithSpecies
546
- has_one :cnidaria, WithSpecies
547
- has_one :coelenterata, WithSpecies
548
- has_one :crustacea, WithSpecies
549
- has_one :ctenophora, WithSpecies
550
- has_one :echinodermata, WithSpecies
551
- has_one :invertebrata_various, WithSpecies, tag: "invertebratavarious"
552
- has_one :mollusca, WithSpecies
553
- has_one :phoronidea, WithSpecies
554
- has_one :plathelminthes, WithSpecies
555
- has_one :porifera, WithSpecies
556
- end
557
-
558
- class Vertebrata
559
- include HappyMapper
560
-
561
- tag "vertebrata"
562
-
563
- has_one :amphibia, WithSpecies
564
- has_one :chondrichthyes, WithSpecies
565
- has_one :mammalia, WithSpecies
566
- has_one :osteichthyes, WithSpecies
567
- has_one :reptilia, WithSpecies
568
- has_one :vertebrata_various, WithSpecies, tag: "vertebratavarious"
569
- end
570
-
571
- class Fauna
572
- include HappyMapper
573
-
574
- tag "fauna"
575
-
576
- has_one :invertebrata, Invertebrata
577
- has_one :notes, Notes
578
- has_one :vertebrata, Vertebrata
579
- end
580
-
581
- class Flora
582
- include HappyMapper
583
-
584
- tag "flora"
585
-
586
- has_one :chlorophyceae, WithSpecies
587
- has_one :flora_various, WithSpecies, tag: "floravarious"
588
- has_one :notes, Notes
589
- has_one :phaeophyceae, WithSpecies
590
- has_one :rhodophyceae, WithSpecies
591
- has_one :spermatophyta, WithSpecies
592
- end
593
-
594
- class Observations
595
- include HappyMapper
596
-
597
- tag "observations"
598
-
599
- has_one :fauna, Fauna
600
- has_one :flora, Flora
601
- has_one :notes, Notes
316
+ has_many :links, Base::Models::Link, tag: "link"
602
317
  end
603
318
 
604
319
  class InformationAfterDive
@@ -606,7 +321,7 @@ module UDDF
606
321
 
607
322
  tag "informationafterdive"
608
323
 
609
- has_one :any_symptoms, AnySymptoms, tag: "anysymptoms"
324
+ has_one :any_symptoms, Base::Models::AnySymptoms, tag: "anysymptoms"
610
325
  has_one :average_depth, Float, tag: "averagedepth"
611
326
  has_one :current, String
612
327
  has_one :desaturation_time, Float, tag: "desaturationtime"
@@ -620,12 +335,12 @@ module UDDF
620
335
  has_one :highest_po2, Float, tag: "highestpo2"
621
336
  has_one :lowest_temperature, Float, tag: "lowesttemperature"
622
337
  has_one :no_flight_time, Float, tag: "noflighttime"
623
- has_one :notes, Notes
624
- has_one :observations, Observations
338
+ has_one :notes, Base::Models::Notes
339
+ has_one :observations, Base::Models::Observations
625
340
  has_one :pressure_drop, Float, tag: "pressuredrop"
626
341
  has_many :problems, String, tag: "problems"
627
342
  has_one :program, String
628
- has_many :ratings, Rating, tag: "rating"
343
+ has_many :ratings, Base::Models::Rating, tag: "rating"
629
344
  has_one :surface_interval_after_dive, SurfaceIntervalAfterDive, tag: "surfaceintervalafterdive"
630
345
  has_one :thermal_comfort, String, tag: "thermalcomfort"
631
346
  has_many :timers, Timer, tag: "timer"
@@ -641,29 +356,6 @@ module UDDF
641
356
  has_many :waypoints, Waypoint, tag: "waypoint"
642
357
  end
643
358
 
644
- class Hargikas
645
- include HappyMapper
646
-
647
- tag "hargikas"
648
-
649
- has_one :ambient, Float
650
- has_many :tissues, Tissue, tag: "tissue"
651
- has_one :arterial_micro_bubble_level, Integer, tag: "arterialmicrobubbleLevel"
652
- has_one :intrapulmonary_right_left_shunt, Float, tag: "intrapulmonaryrightleftshunt"
653
- has_one :estimated_skin_cool_level, Integer, tag: "estimatedskincoolLevel"
654
- end
655
-
656
- class ApplicationData
657
- include HappyMapper
658
-
659
- tag "applicationdata"
660
-
661
- has_one :deco_trainer, String, tag: "decotrainer"
662
- has_one :hargikas, Hargikas
663
- has_one :apdiving, String
664
- has_one :ratio, String
665
- end
666
-
667
359
  class TankUsed
668
360
  include HappyMapper
669
361
 
@@ -674,7 +366,7 @@ module UDDF
674
366
  has_one :analysed_he, Float, tag: "analysedhe"
675
367
  has_one :analysed_o2, Float, tag: "analysedo2"
676
368
  has_one :breathing_consumption_volume, Float, tag: "breathingconsumptionvolume"
677
- has_many :links, Link, tag: "link"
369
+ has_many :links, Base::Models::Link, tag: "link"
678
370
  has_one :tank_pressure_begin, Float, tag: "tankpressurebegin"
679
371
  has_one :tank_pressure_end, Float, tag: "tankpressureend"
680
372
  has_one :tank_volume, Float, tag: "tankvolume"
@@ -696,7 +388,7 @@ module UDDF
696
388
  attribute :id, String
697
389
  has_one :information_after_dive, InformationAfterDive, tag: "informationafterdive"
698
390
  has_one :information_before_dive, InformationBeforeDive, tag: "informationbeforedive"
699
- has_one :application_data, ApplicationData, tag: "applicationdata"
391
+ has_one :application_data, Base::Models::ApplicationDataV330, tag: "applicationdata"
700
392
  has_one :samples, Samples
701
393
  has_one :tank_data, TankData, tag: "tankdata"
702
394
  end
@@ -748,7 +440,7 @@ module UDDF
748
440
 
749
441
  tag "inputprofile"
750
442
 
751
- has_many :links, Link, tag: "link"
443
+ has_many :links, Base::Models::Link, tag: "link"
752
444
  has_many :waypoints, Waypoint, tag: "waypoint"
753
445
  end
754
446
 
@@ -769,12 +461,12 @@ module UDDF
769
461
 
770
462
  tag "profile"
771
463
 
772
- has_one :application_data, ApplicationData, tag: "applicationdata"
773
- has_one :deco_model, DecoModel, tag: "decomodel"
464
+ has_one :application_data, Base::Models::ApplicationDataV330, tag: "applicationdata"
465
+ has_one :deco_model, Base::Models::DecoModelV320, tag: "decomodel"
774
466
  has_one :deep_stops, DeepStops, tag: "deepstops"
775
467
  has_one :density, Float
776
468
  has_one :input_profile, InputProfile, tag: "inputprofile"
777
- has_many :links, Link, tag: "link"
469
+ has_many :links, Base::Models::Link, tag: "link"
778
470
  has_one :maximum_ascending_rate, Float, tag: "maximumascendingrate"
779
471
  has_one :mix_change, MixChange, tag: "mixchange"
780
472
  has_one :output, Output
@@ -846,9 +538,9 @@ module UDDF
846
538
  tag "bottomtimetable"
847
539
 
848
540
  attribute :id, String
849
- has_one :application_data, ApplicationData, tag: "applicationdata"
541
+ has_one :application_data, Base::Models::ApplicationDataV330, tag: "applicationdata"
850
542
  has_one :bottom_time_table_scope, BottomTimeTableScope, tag: "bottomtimetablescope"
851
- has_many :links, Link, tag: "link"
543
+ has_many :links, Base::Models::Link, tag: "link"
852
544
  has_one :output, Output
853
545
  has_one :title, String
854
546
  end
@@ -871,655 +563,162 @@ module UDDF
871
563
  has_one :calculate_table, CalculateTable, tag: "calculatetable"
872
564
  end
873
565
 
874
- class ImageData
566
+ class Maker
875
567
  include HappyMapper
876
568
 
877
- tag "imagedata"
569
+ tag "maker"
878
570
 
879
- has_one :aperture, Float
880
- has_one :datetime, DateTime
881
- has_one :exposure_compensation, Float, tag: "exposurecompensation"
882
- has_one :film_speed, Integer, tag: "filmspeed"
883
- has_one :focal_length, Float, tag: "focallength"
884
- has_one :focusing_distance, Float, tag: "focusingdistance"
885
- has_one :metering_method, String, tag: "meteringmethod"
886
- has_one :shutter_speed, Float, tag: "shutterspeed"
571
+ has_many :manufacturers, Base::Models::Manufacturer, tag: "manufacturer"
887
572
  end
888
573
 
889
- class Image
574
+ class Business
890
575
  include HappyMapper
891
576
 
892
- tag "image"
577
+ tag "business"
893
578
 
894
- attribute :id, String
895
- attribute :height, Integer
896
- attribute :width, Integer
897
- attribute :format, String
898
- has_one :image_data, ImageData, tag: "imagedata"
899
- has_one :object_name, String, tag: "objectname"
900
- has_one :title, String
579
+ has_one :shop, Base::Models::Shop
901
580
  end
902
581
 
903
- class Video
582
+ class TemperatureSensor
904
583
  include HappyMapper
905
584
 
906
- tag "video"
585
+ tag "temperaturesensor"
907
586
 
908
587
  attribute :id, String
909
- has_one :object_name, String, tag: "objectname"
910
- has_one :title, String
588
+
589
+ has_many :alias_names, String, tag: "aliasname"
590
+ has_one :manufacturer, Base::Models::Manufacturer
591
+ has_one :model, String
592
+ has_one :name, String
593
+ has_one :next_service_date, Base::Models::DateTimeField, tag: "nextservicedate"
594
+ has_one :notes, Base::Models::Notes
595
+ has_one :purchase, Base::Models::Purchase
596
+ has_one :serial_number, String, tag: "serialnumber"
597
+ has_one :service_interval, Integer, tag: "serviceinterval"
911
598
  end
912
599
 
913
- class Audio
600
+ class TimerDevice
914
601
  include HappyMapper
915
602
 
916
- tag "audio"
603
+ tag "timerdevice"
917
604
 
918
605
  attribute :id, String
919
- has_one :object_name, String, tag: "objectname"
920
- has_one :title, String
921
606
  end
922
607
 
923
- class MediaData
608
+ class EquipmentPart
924
609
  include HappyMapper
925
610
 
926
- tag "mediadata"
611
+ tag "equipmentpart"
927
612
 
928
- has_many :audio_files, Audio, tag: "audio"
929
- has_many :image_files, Image, tag: "image"
930
- has_many :video_files, Video, tag: "video"
613
+ attribute :id, String
614
+ has_many :alias_names, String, tag: "aliasname"
615
+ has_many :links, Base::Models::Link, tag: "link"
616
+ has_one :manufacturer, Base::Models::Manufacturer
617
+ has_one :model, String
618
+ has_one :name, String
619
+ has_one :next_service_date, Base::Models::DateTimeField, tag: "nextservicedate"
620
+ has_one :notes, Base::Models::Notes
621
+ has_one :purchase, Base::Models::Purchase
622
+ has_one :serial_number, String, tag: "serialnumber"
623
+ has_one :service_interval, Integer, tag: "serviceinterval"
931
624
  end
932
625
 
933
- class Maker
626
+ class Lead < EquipmentPart
934
627
  include HappyMapper
935
628
 
936
- tag "maker"
629
+ tag "lead"
937
630
 
938
- has_many :manufacturers, Manufacturer, tag: "manufacturer"
631
+ has_one :lead_quantity, Integer, tag: "leadquantity"
939
632
  end
940
633
 
941
- class PriceDivePackage
634
+ class Rebreather < EquipmentPart
942
635
  include HappyMapper
943
636
 
944
- tag "pricedivepackage"
637
+ tag "rebreather"
945
638
 
946
- attribute :currency, String
947
- attribute :no_of_dives, Integer
948
- content :value, Float
639
+ has_many :batteries, Battery, tag: "battery"
640
+ has_many :o2_sensors, EquipmentPart, tag: "o2sensor"
641
+ has_many :scrubber_monitors, ScrubberMonitor, tag: "scrubbermonitor"
642
+ has_many :temperature_sensors, TemperatureSensor, tag: "temperaturesensor"
643
+ has_many :timer_devices, TimerDevice, tag: "timerdevice"
949
644
  end
950
645
 
951
- class RelatedDives
646
+ class Suit < EquipmentPart
952
647
  include HappyMapper
953
648
 
954
- tag "relateddives"
649
+ tag "suit"
955
650
 
956
- has_many :links, Link, tag: "link"
651
+ has_one :suit_type, String, tag: "suittype"
957
652
  end
958
653
 
959
- class ShipDimension
654
+ class Tank < EquipmentPart
960
655
  include HappyMapper
961
656
 
962
- tag "shipdimension"
657
+ tag "tank"
963
658
 
964
- has_one :beam, Float
965
- has_one :displacement, Float
966
- has_one :draught, Float
967
- has_one :length, Float
968
- has_one :tonnage, Float
659
+ has_one :tank_material, String, tag: "tankmaterial"
660
+ has_one :tank_volume, Float, tag: "tankvolume"
661
+ has_many :batteries, Battery, tag: "battery"
662
+ has_one :hydro_service_interval, Integer, tag: "hydroserviceinterval"
663
+ has_one :next_hydro_date, Base::Models::DateTimeField, tag: "nexthydrodate"
664
+ has_one :next_visual_date, Base::Models::DateTimeField, tag: "nextvisualdate"
665
+ has_one :rated_pressure, Float, tag: "ratedpressure"
666
+ has_one :visual_service_interval, Integer, tag: "visualserviceinterval"
969
667
  end
970
668
 
971
- class Vessel
669
+ class Camera
972
670
  include HappyMapper
973
671
 
974
- tag "vessel"
672
+ tag "camera"
975
673
 
976
- has_one :address, Base::Models::Address
977
- has_many :alias_names, String, tag: "aliasname"
978
- has_one :contact, Base::Models::Contact
979
- has_one :marina, String
980
- has_one :name, String
981
- has_one :notes, Notes
982
- has_many :ratings, Rating, tag: "rating"
983
- has_one :ship_dimension, ShipDimension, tag: "shipdimension"
984
- has_one :ship_type, String, tag: "shiptype"
674
+ has_one :body, EquipmentPart
675
+ has_many :flashes, EquipmentPart, tag: "flash"
676
+ has_one :housing, EquipmentPart
677
+ has_one :lens, EquipmentPart
985
678
  end
986
679
 
987
- class Operator
680
+ class DiveComputer < EquipmentPart
988
681
  include HappyMapper
989
682
 
990
- tag "operator"
683
+ tag "divecomputer"
991
684
 
992
- has_many :alias_names, String, tag: "aliasname"
993
- has_one :address, Base::Models::Address
994
- has_one :contact, Base::Models::Contact
995
- has_one :name, String
996
- has_one :notes, Notes
997
- has_many :ratings, Rating, tag: "rating"
685
+ has_many :batteries, Battery, tag: "battery"
686
+ has_many :timer_devices, TimerDevice, tag: "timerdevice"
998
687
  end
999
688
 
1000
- class DateOfTrip
689
+ class EquipmentContent
1001
690
  include HappyMapper
1002
691
 
1003
- tag "dateoftrip"
1004
-
1005
- attribute :start_date, DateTime
1006
- attribute :end_date, DateTime
692
+ has_many :boots, EquipmentPart, tag: "boots"
693
+ has_many :buoyancy_control_devices, EquipmentPart, tag: "buoyancycontroldevice"
694
+ has_many :cameras, Camera, tag: "camera"
695
+ has_many :compasses, EquipmentPart, tag: "compass"
696
+ has_many :dive_computers, DiveComputer, tag: "divecomputer"
697
+ has_many :fins, EquipmentPart, tag: "fins"
698
+ has_many :gloves, EquipmentPart, tag: "gloves"
699
+ has_many :knives, EquipmentPart, tag: "knife"
700
+ has_many :leads, Lead, tag: "lead"
701
+ has_many :lights, EquipmentPart, tag: "light"
702
+ has_many :masks, EquipmentPart, tag: "mask"
703
+ has_many :rebreathers, Rebreather, tag: "rebreather"
704
+ has_many :regulators, EquipmentPart, tag: "regulator"
705
+ has_many :scooters, EquipmentPart, tag: "scooter"
706
+ has_many :suits, Suit, tag: "suit"
707
+ has_many :tanks, Tank, tag: "tank"
708
+ has_many :various_pieces, EquipmentPart, tag: "variouspieces"
709
+ has_many :video_cameras, EquipmentPart, tag: "videocamera"
710
+ has_many :watches, EquipmentPart, tag: "watch"
1007
711
  end
1008
712
 
1009
- class Accommodation
1010
- include HappyMapper
1011
-
1012
- tag "accommodation"
1013
-
1014
- has_one :address, Base::Models::Address
1015
- has_many :alias_names, String, tag: "aliasname"
1016
- has_one :category, String
1017
- has_one :contact, Base::Models::Contact
1018
- has_one :name, String
1019
- has_one :notes, Notes
1020
- has_many :ratings, Rating, tag: "rating"
1021
- end
1022
-
1023
- class Geography
1024
- include HappyMapper
1025
-
1026
- tag "geography"
1027
-
1028
- has_one :address, Base::Models::Address
1029
- has_one :altitude, Float
1030
- has_one :latitude, Float
1031
- has_one :location, String
1032
- has_one :longitude, Float
1033
- has_one :time_zone, Float, tag: "timezone"
1034
- end
1035
-
1036
- class TripPart
1037
- include HappyMapper
1038
-
1039
- tag "trippart"
1040
-
1041
- attribute :type, String
1042
- has_one :accommodation, Accommodation
1043
- has_one :date_of_trip, DateOfTrip, tag: "dateoftrip"
1044
- has_one :geography, Geography
1045
- has_many :links, Link, tag: "link"
1046
- has_one :name, String
1047
- has_one :notes, Notes
1048
- has_one :operator, Operator
1049
- has_one :price_dive_package, PriceDivePackage, tag: "pricedivepackage"
1050
- has_one :price_per_dive, Price, tag: "priceperdive"
1051
- has_one :related_dives, RelatedDives, tag: "relateddives"
1052
- has_one :vessel, Vessel
1053
- end
1054
-
1055
- class Trip
1056
- include HappyMapper
1057
-
1058
- tag "trip"
1059
-
1060
- attribute :id, String
1061
- has_many :alias_names, String, tag: "aliasname"
1062
- has_one :name, String
1063
- has_many :ratings, Rating, tag: "rating"
1064
- has_many :trip_parts, TripPart, tag: "trippart"
1065
- end
1066
-
1067
- class DiveTrip
1068
- include HappyMapper
1069
-
1070
- tag "divetrip"
1071
-
1072
- has_many :trips, Trip, tag: "trip"
1073
- end
1074
-
1075
- class Ecology
1076
- include HappyMapper
1077
-
1078
- tag "ecology"
1079
-
1080
- has_one :fauna, Fauna
1081
- has_one :flora, Flora
1082
- end
1083
-
1084
- class Built
1085
- include HappyMapper
1086
-
1087
- tag "built"
1088
-
1089
- has_one :launching_date, Base::Models::DateTimeField, tag: "launchingdate"
1090
- has_one :ship_yard, String, tag: "shipyard"
1091
- end
1092
-
1093
- class Wreck
1094
- include HappyMapper
1095
-
1096
- tag "wreck"
1097
-
1098
- has_many :alias_names, String, tag: "aliasname"
1099
- has_one :built, Built
1100
- has_one :name, String
1101
- has_one :nationality, String
1102
- has_one :ship_dimension, ShipDimension, tag: "shipdimension"
1103
- has_one :ship_type, String, tag: "shiptype"
1104
- has_one :sunk, Base::Models::DateTimeField
1105
- end
1106
-
1107
- class Shore
1108
- include HappyMapper
1109
-
1110
- tag "shore"
1111
-
1112
- attribute :id, String
1113
- has_many :alias_names, String, tag: "aliasname"
1114
- has_one :name, String
1115
- has_one :notes, Notes
1116
- end
1117
-
1118
- class River
1119
- include HappyMapper
1120
-
1121
- tag "river"
1122
-
1123
- attribute :id, String
1124
- has_many :alias_names, String, tag: "aliasname"
1125
- has_one :name, String
1126
- has_one :notes, Notes
1127
- end
1128
-
1129
- class Lake
1130
- include HappyMapper
1131
-
1132
- tag "lake"
1133
-
1134
- attribute :id, String
1135
- has_many :alias_names, String, tag: "aliasname"
1136
- has_one :name, String
1137
- has_one :notes, Notes
1138
- end
1139
-
1140
- class Indoor
1141
- include HappyMapper
1142
-
1143
- tag "indoor"
1144
-
1145
- has_one :address, Base::Models::Address
1146
- has_many :alias_names, String, tag: "aliasname"
1147
- has_one :contact, Base::Models::Contact
1148
- has_one :name, String
1149
- has_one :notes, Notes
1150
- end
1151
-
1152
- class Cave
1153
- include HappyMapper
1154
-
1155
- tag "cave"
1156
-
1157
- attribute :id, String
1158
- has_many :alias_names, String, tag: "aliasname"
1159
- has_one :name, String
1160
- has_one :notes, Notes
1161
- end
1162
-
1163
- class SiteData
1164
- include HappyMapper
1165
-
1166
- tag "sidedata"
1167
-
1168
- has_one :area_length, Float, tag: "arealength"
1169
- has_one :area_width, Float, tag: "areawidth"
1170
- has_one :average_visibility, Float, tag: "averagevisibility"
1171
- has_one :bottom, String
1172
- has_one :cave, Cave
1173
- has_one :density, Float
1174
- has_one :difficulty, Integer
1175
- has_one :global_light_intensity, String, tag: "globallightintensity"
1176
- has_one :indoor, Indoor
1177
- has_one :maximum_depth, Float, tag: "maximumdepth"
1178
- has_one :maximum_visibility, Float, tag: "maximumvisibility"
1179
- has_one :minimum_depth, Float, tag: "minimumdepth"
1180
- has_one :minimum_visibility, Float, tag: "minimumvisibility"
1181
- has_one :river, River
1182
- has_one :shore, Shore
1183
- has_one :terrain, String
1184
- has_one :wreck, Wreck
1185
- end
1186
-
1187
- class Site
1188
- include HappyMapper
1189
-
1190
- tag "site"
1191
-
1192
- attribute :id, String
1193
- has_many :alias_names, String, tag: "aliasname"
1194
- has_one :ecology, Ecology
1195
- has_one :environment, String
1196
- has_one :geography, Geography
1197
- has_many :links, Link, tag: "link"
1198
- has_one :name, String
1199
- has_one :notes, Notes
1200
- has_many :ratings, Rating, tag: "rating"
1201
- has_one :side_data, SiteData, tag: "sitedata"
1202
- end
1203
-
1204
- class Guide
1205
- include HappyMapper
1206
-
1207
- tag "guide"
1208
-
1209
- has_many :links, Link, tag: "link"
1210
- end
1211
-
1212
- class DiveBase
1213
- include HappyMapper
1214
-
1215
- tag "divebase"
1216
-
1217
- attribute :id, String
1218
- has_one :address, Base::Models::Address
1219
- has_many :alias_names, String, tag: "aliasname"
1220
- has_one :contact, Base::Models::Contact
1221
- has_many :guides, Guide, tag: "guide"
1222
- has_many :links, Link, tag: "link"
1223
- has_one :name, String
1224
- has_one :notes, Notes
1225
- has_one :price_dive_package, PriceDivePackage, tag: "pricedivepackage"
1226
- has_one :price_per_dive, Price, tag: "priceperdive"
1227
- has_many :ratings, Rating, tag: "rating"
1228
- end
1229
-
1230
- class DiveSite
1231
- include HappyMapper
1232
-
1233
- tag "divesite"
1234
-
1235
- has_many :dive_bases, DiveBase, tag: "divebase"
1236
- has_many :sites, Site, tag: "site"
1237
- end
1238
-
1239
- class Shop
1240
- include HappyMapper
1241
-
1242
- tag "shop"
1243
-
1244
- has_many :alias_names, String, tag: "aliasname"
1245
- has_one :address, Base::Models::Address
1246
- has_one :contact, Base::Models::Contact
1247
- has_one :name, String
1248
- has_one :notes, Notes
1249
- end
1250
-
1251
- class Business
1252
- include HappyMapper
1253
-
1254
- tag "business"
1255
-
1256
- has_one :shop, Shop
1257
- end
1258
-
1259
- class Membership
1260
- include HappyMapper
1261
-
1262
- tag "membership"
1263
-
1264
- attribute :organisation, String
1265
- attribute :member_id, String
1266
- end
1267
-
1268
- class NumberOfDives
1269
- include HappyMapper
1270
-
1271
- tag "numberofdives"
1272
-
1273
- has_one :start_date, DateTime, tag: "startdate"
1274
- has_one :end_date, DateTime, tag: "enddate"
1275
- has_one :dives, Integer
1276
- end
1277
-
1278
- class Personal
1279
- include HappyMapper
1280
-
1281
- tag "personal"
1282
-
1283
- has_one :birth_date, Base::Models::DateTimeField, tag: "birthdate"
1284
- has_one :birth_name, String, tag: "birthname"
1285
- has_one :blood_group, String, tag: "bloodgroup"
1286
- has_one :first_name, String, tag: "firstname"
1287
- has_one :height, Float
1288
- has_one :honorific, String
1289
- has_one :last_name, String, tag: "lastname"
1290
- has_one :membership, Membership
1291
- has_one :middle_name, String, tag: "middlename"
1292
- has_one :number_of_dives, NumberOfDives, tag: "numberofdives"
1293
- has_one :sex, String
1294
- has_one :smoking, String
1295
- has_one :weight, Float
1296
- end
1297
-
1298
- class Instructor
1299
- include HappyMapper
1300
-
1301
- tag "instructor"
1302
-
1303
- has_one :address, Base::Models::Address
1304
- has_one :contact, Base::Models::Contact
1305
- has_one :personal, Personal
1306
- end
1307
-
1308
- class Certification
1309
- include HappyMapper
1310
-
1311
- tag "certification"
1312
-
1313
- has_one :certificate_number, String, tag: "certificatenumber"
1314
- has_one :instructor, Instructor
1315
- has_one :issue_date, Base::Models::DateTimeField, tag: "issuedate"
1316
- has_one :level, String
1317
- has_one :link, Link
1318
- has_one :organization, String
1319
- has_one :specialty, String
1320
- has_one :valid_date, Base::Models::DateTimeField, tag: "validdate"
1321
- end
1322
-
1323
- class Education
1324
- include HappyMapper
1325
-
1326
- tag "education"
1327
-
1328
- has_many :certifications, Certification, tag: "certification"
1329
- end
1330
-
1331
- class Insurance
1332
- include HappyMapper
1333
-
1334
- tag "insurance"
1335
-
1336
- has_many :alias_names, String, tag: "aliasname"
1337
- has_one :issue_date, Base::Models::DateTimeField, tag: "issuedate"
1338
- has_one :name, String
1339
- has_one :notes, Notes
1340
- has_one :valid_date, Base::Models::DateTimeField, tag: "validdate"
1341
- end
1342
-
1343
- class DiveInsurances
1344
- include HappyMapper
1345
-
1346
- tag "diveinsurances"
1347
-
1348
- has_many :insurances, Insurance, tag: "insurance"
1349
- end
1350
-
1351
- class Permit
1352
- include HappyMapper
1353
-
1354
- tag "permit"
1355
-
1356
- has_many :alias_names, String, tag: "aliasname"
1357
- has_one :issue_date, Base::Models::DateTimeField, tag: "issuedate"
1358
- has_one :name, String
1359
- has_one :notes, Notes
1360
- has_one :region, String
1361
- has_one :valid_date, Base::Models::DateTimeField, tag: "validdate"
1362
- end
1363
-
1364
- class DivePermissions
1365
- include HappyMapper
1366
-
1367
- tag "divepermissions"
1368
-
1369
- has_many :permits, Permit, tag: "permit"
1370
- end
1371
-
1372
- class Purchase
1373
- include HappyMapper
1374
-
1375
- tag "purchase"
1376
-
1377
- has_one :datetime, DateTime
1378
- has_one :link, Link
1379
- has_one :price, Price
1380
- has_one :shop, Shop
1381
- end
1382
-
1383
- class TemperatureSensor
1384
- include HappyMapper
1385
-
1386
- tag "temperaturesensor"
1387
-
1388
- attribute :id, String
1389
-
1390
- has_many :alias_names, String, tag: "aliasname"
1391
- has_one :manufacturer, Manufacturer
1392
- has_one :model, String
1393
- has_one :name, String
1394
- has_one :next_service_date, Base::Models::DateTimeField, tag: "nextservicedate"
1395
- has_one :notes, Notes
1396
- has_one :purchase, Purchase
1397
- has_one :serial_number, String, tag: "serialnumber"
1398
- has_one :service_interval, Integer, tag: "serviceinterval"
1399
- end
1400
-
1401
- class TimerDevice
1402
- include HappyMapper
1403
-
1404
- tag "timerdevice"
1405
-
1406
- attribute :id, String
1407
- end
1408
-
1409
- class EquipmentPart
1410
- include HappyMapper
1411
-
1412
- tag "equipmentpart"
1413
-
1414
- attribute :id, String
1415
- has_many :alias_names, String, tag: "aliasname"
1416
- has_many :links, Link, tag: "link"
1417
- has_one :manufacturer, Manufacturer
1418
- has_one :model, String
1419
- has_one :name, String
1420
- has_one :next_service_date, Base::Models::DateTimeField, tag: "nextservicedate"
1421
- has_one :notes, Notes
1422
- has_one :purchase, Purchase
1423
- has_one :serial_number, String, tag: "serialnumber"
1424
- has_one :service_interval, Integer, tag: "serviceinterval"
1425
- end
1426
-
1427
- class Lead < EquipmentPart
1428
- include HappyMapper
1429
-
1430
- tag "lead"
1431
-
1432
- has_one :lead_quantity, Integer, tag: "leadquantity"
1433
- end
1434
-
1435
- class Rebreather < EquipmentPart
1436
- include HappyMapper
1437
-
1438
- tag "rebreather"
1439
-
1440
- has_many :batteries, Battery, tag: "battery"
1441
- has_many :o2_sensors, EquipmentPart, tag: "o2sensor"
1442
- has_many :scrubber_monitors, ScrubberMonitor, tag: "scrubbermonitor"
1443
- has_many :temperature_sensors, TemperatureSensor, tag: "temperaturesensor"
1444
- has_many :timer_devices, TimerDevice, tag: "timerdevice"
1445
- end
1446
-
1447
- class Suit < EquipmentPart
1448
- include HappyMapper
1449
-
1450
- tag "suit"
1451
-
1452
- has_one :suit_type, String, tag: "suittype"
1453
- end
1454
-
1455
- class Tank < EquipmentPart
1456
- include HappyMapper
1457
-
1458
- tag "tank"
1459
-
1460
- has_one :tank_material, String, tag: "tankmaterial"
1461
- has_one :tank_volume, Float, tag: "tankvolume"
1462
- has_many :batteries, Battery, tag: "battery"
1463
- has_one :hydro_service_interval, Integer, tag: "hydroserviceinterval"
1464
- has_one :next_hydro_date, Base::Models::DateTimeField, tag: "nexthydrodate"
1465
- has_one :next_visual_date, Base::Models::DateTimeField, tag: "nextvisualdate"
1466
- has_one :rated_pressure, Float, tag: "ratedpressure"
1467
- has_one :visual_service_interval, Integer, tag: "visualserviceinterval"
1468
- end
1469
-
1470
- class Camera
1471
- include HappyMapper
1472
-
1473
- tag "camera"
1474
-
1475
- has_one :body, EquipmentPart
1476
- has_many :flashes, EquipmentPart, tag: "flash"
1477
- has_one :housing, EquipmentPart
1478
- has_one :lens, EquipmentPart
1479
- end
1480
-
1481
- class DiveComputer < EquipmentPart
1482
- include HappyMapper
1483
-
1484
- tag "divecomputer"
1485
-
1486
- has_many :batteries, Battery, tag: "battery"
1487
- has_many :timer_devices, TimerDevice, tag: "timerdevice"
1488
- end
1489
-
1490
- class EquipmentContent
1491
- include HappyMapper
1492
-
1493
- has_many :boots, EquipmentPart, tag: "boots"
1494
- has_many :buoyancy_control_devices, EquipmentPart, tag: "buoyancycontroldevice"
1495
- has_many :cameras, Camera, tag: "camera"
1496
- has_many :compasses, EquipmentPart, tag: "compass"
1497
- has_many :dive_computers, DiveComputer, tag: "divecomputer"
1498
- has_many :fins, EquipmentPart, tag: "fins"
1499
- has_many :gloves, EquipmentPart, tag: "gloves"
1500
- has_many :knives, EquipmentPart, tag: "knife"
1501
- has_many :leads, Lead, tag: "lead"
1502
- has_many :lights, EquipmentPart, tag: "light"
1503
- has_many :masks, EquipmentPart, tag: "mask"
1504
- has_many :rebreathers, Rebreather, tag: "rebreather"
1505
- has_many :regulators, EquipmentPart, tag: "regulator"
1506
- has_many :scooters, EquipmentPart, tag: "scooter"
1507
- has_many :suits, Suit, tag: "suit"
1508
- has_many :tanks, Tank, tag: "tank"
1509
- has_many :various_pieces, EquipmentPart, tag: "variouspieces"
1510
- has_many :video_cameras, EquipmentPart, tag: "videocamera"
1511
- has_many :watches, EquipmentPart, tag: "watch"
1512
- end
1513
-
1514
- class EquipmentConfiguration < EquipmentContent
713
+ class EquipmentConfiguration < EquipmentContent
1515
714
  include HappyMapper
1516
715
 
1517
716
  tag "equipmentconfiguration"
1518
717
 
1519
718
  has_many :alias_names, String, tag: "aliasname"
1520
- has_many :links, Link, tag: "link"
719
+ has_many :links, Base::Models::Link, tag: "link"
1521
720
  has_one :name, String
1522
- has_one :notes, Notes
721
+ has_one :notes, Base::Models::Notes
1523
722
  end
1524
723
 
1525
724
  class Equipment < EquipmentContent
@@ -1531,51 +730,18 @@ module UDDF
1531
730
  has_one :equipment_configuration, EquipmentConfiguration, tag: "equipmentconfiguration"
1532
731
  end
1533
732
 
1534
- class Doctor
1535
- include HappyMapper
1536
-
1537
- tag "doctor"
1538
-
1539
- attribute :id, String
1540
- has_one :address, Base::Models::Address
1541
- has_one :contact, Base::Models::Contact
1542
- has_one :personal, Personal
1543
- end
1544
-
1545
- class Examination
1546
- include HappyMapper
1547
-
1548
- tag "examination"
1549
-
1550
- has_one :datetime, DateTime
1551
- has_one :doctor, Doctor
1552
- has_one :examination_result, String, tag: "examinationresult"
1553
- has_many :links, Link, tag: "link"
1554
- has_one :notes, Notes
1555
- has_one :total_lung_capacity, Float, tag: "totallungcapacity"
1556
- has_one :vital_capacity, Float, tag: "vitalcapacity"
1557
- end
1558
-
1559
- class Medical
1560
- include HappyMapper
1561
-
1562
- tag "medical"
1563
-
1564
- has_one :examination, Examination
1565
- end
1566
-
1567
733
  class BuddyOwnerShared
1568
734
  include HappyMapper
1569
735
 
1570
736
  attribute :id, String
1571
737
  has_one :address, Base::Models::Address
1572
738
  has_one :contact, Base::Models::Contact
1573
- has_one :dive_insurances, DiveInsurances, tag: "diveinsurances"
1574
- has_one :dive_permissions, DivePermissions, tag: "divepermissions"
739
+ has_one :dive_insurances, Base::Models::DiveInsurances, tag: "diveinsurances"
740
+ has_one :dive_permissions, Base::Models::DivePermissions, tag: "divepermissions"
1575
741
  has_one :equipment, Equipment
1576
- has_one :medical, Medical
1577
- has_one :notes, Notes
1578
- has_one :personal, Personal
742
+ has_one :medical, Base::Models::Medical
743
+ has_one :notes, Base::Models::Notes
744
+ has_one :personal, Base::Models::Personal
1579
745
  end
1580
746
 
1581
747
  class Buddy < BuddyOwnerShared
@@ -1584,7 +750,7 @@ module UDDF
1584
750
  tag "buddy"
1585
751
 
1586
752
  attribute :id, String
1587
- has_one :certification, Certification
753
+ has_one :certification, Base::Models::CertificationV322
1588
754
  has_one :student, String
1589
755
  end
1590
756
 
@@ -1594,7 +760,7 @@ module UDDF
1594
760
  tag "owner"
1595
761
 
1596
762
  attribute :id, String
1597
- has_one :education, Education
763
+ has_one :education, Base::Models::EducationV322
1598
764
  end
1599
765
 
1600
766
  class Diver
@@ -1606,133 +772,6 @@ module UDDF
1606
772
  has_one :owner, Owner
1607
773
  end
1608
774
 
1609
- class DCAlarm
1610
- include HappyMapper
1611
-
1612
- tag "dcalarm"
1613
-
1614
- has_one :acknowledge, String
1615
- has_one :alarm_type, Integer, tag: "alarmtype"
1616
- has_one :period, Float
1617
- end
1618
-
1619
- class SetDCDiveDepthAlarm
1620
- include HappyMapper
1621
-
1622
- tag "setdcdivedethalarm"
1623
-
1624
- has_one :dc_alarm, DCAlarm
1625
- has_one :dc_alarm_depth, Float
1626
- end
1627
-
1628
- class SetDCDivePo2Alarm
1629
- include HappyMapper
1630
-
1631
- tag "setdcdivepo2alarm"
1632
-
1633
- has_one :dc_alarm, DCAlarm
1634
- has_one :maximum_po2, Float
1635
- end
1636
-
1637
- class SetDCDiveSiteData
1638
- include HappyMapper
1639
-
1640
- tag "setdcdivesitedata"
1641
-
1642
- attribute :dive_site, String
1643
- end
1644
-
1645
- class SetDCDiveTimeAlarm
1646
- include HappyMapper
1647
-
1648
- tag "setdcdivetimealarm"
1649
-
1650
- has_one :dc_alarm, DCAlarm
1651
- has_one :timespan, Float
1652
- end
1653
-
1654
- class SetDCEndNDTAlarm
1655
- include HappyMapper
1656
-
1657
- tag "setdcendndtalarm"
1658
-
1659
- has_one :dc_alarm, DCAlarm
1660
- end
1661
-
1662
- class SetDCDecoModel
1663
- include HappyMapper
1664
-
1665
- tag "setdcdecomodel"
1666
-
1667
- has_many :alias_names, String, tag: "aliasname"
1668
- has_one :application_data, ApplicationData
1669
- has_one :name, String
1670
- end
1671
-
1672
- class SetDCBuddyData
1673
- include HappyMapper
1674
-
1675
- tag "setdcbuddydata"
1676
-
1677
- attribute :buddy, String
1678
- end
1679
-
1680
- class SetDCData
1681
- include HappyMapper
1682
-
1683
- tag "setdcdata"
1684
-
1685
- has_one :set_dc_alarm_time, DateTime
1686
- has_one :set_dc_altitude, Float
1687
- has_one :set_dc_buddy_data, SetDCBuddyData
1688
- has_one :set_dc_date_time, DateTime
1689
- has_one :set_dc_deco_model, SetDCDecoModel
1690
- has_one :set_dc_dive_depth_alarm, SetDCDiveDepthAlarm
1691
- has_one :set_dc_dive_po2_alarm, SetDCDivePo2Alarm
1692
- has_many :set_dc_dive_site_data, SetDCDiveSiteData, tag: "setdcdivesitedata"
1693
- has_one :set_dc_dive_time_alarm, SetDCDiveTimeAlarm
1694
- has_one :set_dc_end_ndt_alarm, SetDCEndNDTAlarm
1695
- has_one :set_dc_gas_definitions_data, String
1696
- has_one :set_dc_owner_data, String
1697
- has_one :set_dc_password, String
1698
- has_one :set_dc_generator_data, String
1699
- end
1700
-
1701
- class GetDCData
1702
- include HappyMapper
1703
-
1704
- tag "getdcdata"
1705
-
1706
- has_one :get_dc_all_data, String
1707
- has_one :get_dc_generator_data, String
1708
- has_one :get_dc_owner_data, String
1709
- has_one :get_dc_buddy_data, String
1710
- has_one :get_dc_gas_definitions_data, String
1711
- has_one :get_dc_dive_site_data, String
1712
- has_one :get_dc_dive_trip_data, String
1713
- has_one :get_dc_profile_data, String
1714
- end
1715
-
1716
- class DiveComputerDump
1717
- include HappyMapper
1718
-
1719
- tag "divecomputerdump"
1720
-
1721
- has_one :datetime, DateTime
1722
- has_one :dc_dump, String
1723
- has_one :link, Link
1724
- end
1725
-
1726
- class DiveComputerControl
1727
- include HappyMapper
1728
-
1729
- tag "divecomputercontrol"
1730
-
1731
- has_many :dive_computer_dumps, DiveComputerDump, tag: "divecomputerdump"
1732
- has_one :get_dc_data, GetDCData, tag: "getdcdata"
1733
- has_one :set_dc_data, SetDCData, tag: "setdcdata"
1734
- end
1735
-
1736
775
  class Uddf
1737
776
  include HappyMapper
1738
777
 
@@ -1740,15 +779,15 @@ module UDDF
1740
779
 
1741
780
  attribute :version, String
1742
781
  has_one :business, Business
1743
- has_one :deco_model, DecoModel, tag: "decomodel"
1744
- has_one :dive_computer_control, DiveComputerControl, tag: "divecomputercontrol"
782
+ has_one :deco_model, Base::Models::DecoModelV320, tag: "decomodel"
783
+ has_one :dive_computer_control, Base::Models::DiveComputerControlV330, tag: "divecomputercontrol"
1745
784
  has_one :diver, Diver
1746
- has_one :dive_site, DiveSite, tag: "divesite"
1747
- has_one :dive_trip, DiveTrip, tag: "divetrip"
1748
- has_one :gas_definitions, GasDefinitions, tag: "gasdefinitions"
1749
- has_one :generator, Generator
785
+ has_one :dive_site, Base::Models::DiveSite, tag: "divesite"
786
+ has_one :dive_trip, Base::Models::DiveTrip, tag: "divetrip"
787
+ has_one :gas_definitions, Base::Models::GasDefinitions, tag: "gasdefinitions"
788
+ has_one :generator, Base::Models::Generator
1750
789
  has_one :maker, Maker
1751
- has_one :media_data, MediaData, tag: "mediadata"
790
+ has_one :media_data, Base::Models::MediaData, tag: "mediadata"
1752
791
  has_one :profile_data, ProfileData, tag: "profiledata"
1753
792
  has_one :table_generation, TableGeneration, tag: "tablegeneration"
1754
793
  end