Struct dicom_core::value::partial::DicomDateTime [−][src]
pub struct DicomDateTime { /* fields omitted */ }Expand description
Represents a Dicom DateTime value with a partial precision,
where some date / time components may be missing.
DicomDateTime is always internally represented by a DicomDate
and optionally by a DicomTime.
It implements AsRange trait and also holds a FixedOffset value, from which corresponding
chrono::DateTime values can be retrieved.
Example
use chrono::{DateTime, FixedOffset, TimeZone};
use dicom_core::value::{DicomDate, DicomTime, DicomDateTime, AsRange};
let offset = FixedOffset::east(3600);
// the least precise date-time value possible is a 'YYYY'
let dt = DicomDateTime::from_date(
DicomDate::from_y(2020)?,
offset
);
assert_eq!(
dt.earliest()?,
offset.ymd(2020, 1, 1)
.and_hms(0, 0, 0)
);
assert_eq!(
dt.latest()?,
offset.ymd(2020, 12, 31)
.and_hms_micro(23, 59, 59, 999_999)
);
let dt = DicomDateTime::try_from(&offset
.ymd(2020, 12, 31)
.and_hms(23, 59, 0)
)?;
// conversion from chrono value leads to a precise value
assert_eq!(dt.is_precise(), true);
assert_eq!(dt.to_string(), "2020-12-31 23:59:00.0 +01:00");Implementations
Constructs a new DicomDateTime from a DicomDate and a given FixedOffset.
pub fn from_date_and_time(
date: DicomDate,
time: DicomTime,
offset: FixedOffset
) -> Result<DicomDateTime, Error>
pub fn from_date_and_time(
date: DicomDate,
time: DicomTime,
offset: FixedOffset
) -> Result<DicomDateTime, Error>
Constructs a new DicomDateTime from a DicomDate, DicomTime and a given FixedOffset,
providing that DicomDate is precise.
Retrieves a refrence to the internal time value, if present
Retrieves a refrence to the internal offset value
Retrieves a dicom encoded string representation of the value.
Retrieves a chrono::DateTime<FixedOffset> if value is precise.
Trait Implementations
type Item = DateTime<FixedOffset>
type Range = DateTimeRange
Returns the earliest possible chrono value from a partial precision structure.
Missing components default to 1 (days, months) or 0 (hours, minutes, …)
If structure contains invalid combination of DateComponents, it fails. Read more
Returns the latest possible chrono value from a partial precision structure.
If structure contains invalid combination of DateComponents, it fails. Read more
Returns a tuple of the earliest and latest possible value from a partial precision structure.
Returns a corresponding chrono value, if the partial precision structure has full accuracy.
Returns true, if partial precision structure has maximum possible accuracy.
For fraction of a second, full 6 digits are required for the value to be precise. Read more
Performs the conversion.
This method tests for self and other values to be equal, and is used
by ==. Read more
This method tests for !=.
Auto Trait Implementations
impl RefUnwindSafe for DicomDateTime
impl Send for DicomDateTime
impl Sync for DicomDateTime
impl Unpin for DicomDateTime
impl UnwindSafe for DicomDateTime
Blanket Implementations
Mutably borrows from an owned value. Read more