Class: OpenEHR::RM::DataTypes::Quantity::DateTime::DvDuration
- Inherits:
-
DvTemporal
- Object
- Basic::DataValue
- OpenEHR::RM::DataTypes::Quantity::DvOrdered
- OpenEHR::RM::DataTypes::Quantity::DvQuantified
- OpenEHR::RM::DataTypes::Quantity::DvAbsoluteQuantity
- DvTemporal
- OpenEHR::RM::DataTypes::Quantity::DateTime::DvDuration
- Defined in:
- lib/openehr/rm/data_types/quantity/date_time.rb
Constant Summary
Constants included from AssumedLibraryTypes::TimeDefinitions
AssumedLibraryTypes::TimeDefinitions::DAYS_IN_LEAP_YEAR, AssumedLibraryTypes::TimeDefinitions::DAYS_IN_MONTH, AssumedLibraryTypes::TimeDefinitions::DAYS_IN_WEEK, AssumedLibraryTypes::TimeDefinitions::DAYS_IN_YEAR, AssumedLibraryTypes::TimeDefinitions::HOURS_IN_DAY, AssumedLibraryTypes::TimeDefinitions::MAX_DAYS_IN_MONTH, AssumedLibraryTypes::TimeDefinitions::MAX_DAYS_IN_YEAR, AssumedLibraryTypes::TimeDefinitions::MINUTES_IN_HOUR, AssumedLibraryTypes::TimeDefinitions::MONTH_IN_YEAR, AssumedLibraryTypes::TimeDefinitions::NOMINAL_DAYS_IN_MONTH, AssumedLibraryTypes::TimeDefinitions::NOMINAL_DAYS_IN_YEAR, AssumedLibraryTypes::TimeDefinitions::SECONDS_IN_MINUTE
Constants included from Support::Definition::BasicDefinition
Support::Definition::BasicDefinition::CR, Support::Definition::BasicDefinition::LF
Instance Attribute Summary collapse
-
#value ⇒ Object
Returns the value of attribute value.
Attributes included from AssumedLibraryTypes::ISO8601DurationModule
#days, #fractional_second, #hours, #minutes, #months, #seconds, #weeks, #years
Attributes inherited from OpenEHR::RM::DataTypes::Quantity::DvAbsoluteQuantity
Attributes inherited from OpenEHR::RM::DataTypes::Quantity::DvQuantified
Attributes inherited from OpenEHR::RM::DataTypes::Quantity::DvOrdered
#normal_range, #normal_status, #other_reference_ranges
Instance Method Summary collapse
-
#initialize(args = { }) ⇒ DvDuration
constructor
A new instance of DvDuration.
- #magnitude ⇒ Object
Methods included from AssumedLibraryTypes::ISO8601DurationModule
Methods included from AssumedLibraryTypes::TimeDefinitions
valid_day?, valid_hour?, valid_minute?, valid_month?, valid_second?, valid_year?
Methods inherited from OpenEHR::RM::DataTypes::Quantity::DvAbsoluteQuantity
Methods inherited from OpenEHR::RM::DataTypes::Quantity::DvQuantified
#<=>, #accuracy_unknown?, valid_magnitude_status?
Methods inherited from OpenEHR::RM::DataTypes::Quantity::DvOrdered
#<=>, #is_normal?, #is_simple?, #is_strictly_comparable_to?
Methods inherited from Basic::DataValue
Constructor Details
#initialize(args = { }) ⇒ DvDuration
Returns a new instance of DvDuration.
211 212 213 |
# File 'lib/openehr/rm/data_types/quantity/date_time.rb', line 211 def initialize(args = { }) super end |
Instance Attribute Details
#value ⇒ Object
Returns the value of attribute value.
209 210 211 |
# File 'lib/openehr/rm/data_types/quantity/date_time.rb', line 209 def value @value end |
Instance Method Details
#magnitude ⇒ Object
229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 |
# File 'lib/openehr/rm/data_types/quantity/date_time.rb', line 229 def magnitude months = 0 months += @months if @months months += @years * MONTH_IN_YEAR if @years days = 0 days += months * NOMINAL_DAYS_IN_MONTH if months days += @weeks * DAYS_IN_WEEK if @weeks days += @days if @days hours = 0 hours += days * HOURS_IN_DAY if days hours += @hours if @hours minutes = 0 minutes += hours * MINUTES_IN_HOUR if hours minutes += @minutes if @minutes seconds = 0 seconds += @seconds if @seconds seconds += @fractional_second if @fractional_second seconds += minutes * SECONDS_IN_MINUTE if minutes return seconds end |