- Timestamp:
- Aug 6, 2009, 1:20:05 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/branches/0.5.0/lib/open_ehr/rm/data_types/quantity.rb
r149 r167 3 3 # Ticket refs #50 4 4 require 'assumed_library_types' 5 module OpenE HR5 module OpenEhr 6 6 module RM 7 module Data _Types7 module DataTypes 8 8 module Quantity 9 9 10 10 autoload :Date_Time, "rm/data_types/quantity/date_time.rb" 11 11 12 class D V_Ordered < OpenEHR::RM::Data_Types::Basic::Data_Value12 class DvOrdered < OpenEhr::RM::DataTypes::Basic::DataValue 13 13 include Comparable 14 14 attr_accessor :normal_range, :other_refference_ranges, :normal_status … … 51 51 end 52 52 53 class D V_Interval < OpenEHR::Assumed_Library_Types::Interval54 55 end 56 57 class D V_Quantified < DV_Ordered53 class DvInterval < OpenEhr::AssumedLibraryTypes::Interval 54 55 end 56 57 class DvQuantified < DvOrdered 58 58 attr_reader :magnitude, :magnitude_status 59 59 … … 78 78 if magnitude_status.nil? 79 79 @magnitude_status = '=' 80 elsif D V_Quantified.valid_magnitude_status?(magnitude_status)80 elsif DvQuantified.valid_magnitude_status?(magnitude_status) 81 81 @magnitude_status = magnitude_status 82 82 else … … 99 99 end 100 100 101 class D V_Ordinal < DV_Ordered101 class DvOrdinal < DvOrdered 102 102 attr_reader :value, :symbol, :limits 103 103 … … 121 121 122 122 def is_strictly_comparable_to?(others) 123 unless others.instance_of? OpenE HR::RM::Data_Types::Quantity::DV_Ordinal123 unless others.instance_of? OpenEhr::RM::DataTypes::Quantity::DvOrdinal 124 124 return false 125 125 end … … 144 144 end 145 145 146 class D V_Absolute_Quantity < DV_Quantified146 class DvAbsoluteQuantity < DvQuantified 147 147 attr_accessor :accuracy 148 148 … … 168 168 end 169 169 170 class D V_Amount < DV_Quantified170 class DvAmount < DvQuantified 171 171 attr_reader :accuracy, :accuracy_percent 172 172 def initialize(magnitude, magnitude_status=nil, accuracy=nil, … … 186 186 raise ArgumentError, 'type mismatch' 187 187 end 188 return D V_Amount.new(@magnitude+other.magnitude, @magnitude_status,188 return DvAmount.new(@magnitude+other.magnitude, @magnitude_status, 189 189 @accuracy, @accuracy_percent, @normal_range, 190 190 @normal_status, @other_reference_ranges) … … 210 210 end 211 211 212 class D V_Quantity < DV_Amount212 class DvQuantity < DvAmount 213 213 attr_reader :units, :precision 214 214 def initialize(magnitude, units, magnitude_status=nil, precision=nil, … … 235 235 def is_strictly_comparable_to?(others) 236 236 return false if others.nil? 237 if others.instance_of?(D V_Quantity) && others.units == @units237 if others.instance_of?(DvQuantity) && others.units == @units 238 238 return true 239 239 else … … 252 252 def +(other) 253 253 dv_amount = super(other) 254 return D V_Quantity.new(dv_amount.magnitude, @units,254 return DvQuantity.new(dv_amount.magnitude, @units, 255 255 @magnitude_status, @precision, 256 256 @accuracy, @accuracy_percent, @normal_range, … … 259 259 end 260 260 261 class D V_Count < DV_Amount261 class DvCount < DvAmount 262 262 def is_strictly_comparable_to?(others) 263 263 return false if others.nil? 264 if others.instance_of?(D V_Count)264 if others.instance_of?(DvCount) 265 265 return true 266 266 else … … 270 270 end 271 271 272 class Reference _Range272 class ReferenceRange 273 273 attr_reader :meaning, :range 274 274 … … 297 297 end 298 298 299 module Proportion _Kind299 module ProportionKind 300 300 PK_RATIO = 0 301 301 PK_UNITARY = 1 … … 304 304 PK_INTEGER_FRACTION = 4 305 305 306 def Proportion _Kind.valid_proportion_kind?(kind)306 def ProportionKind.valid_proportion_kind?(kind) 307 307 return true if kind >= 0 && kind <= 4 308 308 return false 309 309 end 310 end # end of Proportion _Kind311 312 class D V_Proportion < DV_Amount313 include Proportion _Kind310 end # end of ProportionKind 311 312 class DvProportion < DvAmount 313 include ProportionKind 314 314 attr_reader :numerator, :denominator, :type, :precision 315 315 … … 360 360 361 361 def type=(type) 362 if Proportion _Kind.valid_proportion_kind?(type)362 if ProportionKind.valid_proportion_kind?(type) 363 363 @type = type 364 364 else … … 386 386 387 387 def is_strictly_comparable_to?(other) 388 unless other.instance_of?(D V_Proportion)388 unless other.instance_of?(DvProportion) 389 389 return false 390 390 end … … 395 395 end 396 396 end 397 end # end of DV_Proportion 398 397 end # end of DvProportion 399 398 end # of Quantity 400 399 end # of Data_Types
Note:
See TracChangeset
for help on using the changeset viewer.