It would be convenient to overload Base.propertynames for DICOM.DICOMData. It makes interactive work with it easier by exposing properties in REPL tab-completion. I've prepared the following implementation and I can make a PR if you're interested:
function Base.propertynames(dcm::DICOM.DICOMData)
basic_properties = invoke(propertynames, Tuple{Any}, dcm)
dcm_keys = keys(dcm.meta)
pnames = Symbol[basic_properties...]
for (k, v) in DICOM.fieldname_dict
if v in dcm_keys
push!(pnames, k)
end
end
return pnames
end
It would be convenient to overload
Base.propertynames
forDICOM.DICOMData
. It makes interactive work with it easier by exposing properties in REPL tab-completion. I've prepared the following implementation and I can make a PR if you're interested:Now I can get a nice list: