OFCondition DcmtkUtils::insertBaseImageTags()

in src/dcmtkUtils.cpp [354:376]


OFCondition DcmtkUtils::insertBaseImageTags(absl::string_view imageName,
const int64_t imageHeight, const int64_t imageWidth,
const double firstLevelWidthMm, const double firstLevelHeightMm,
DcmDataset* dataSet) {
  std::string imageName_str = std::move(static_cast<std::string>(imageName));
  OFCondition cond;
  if (imageName_str.length() > 0) {
    cond = dataSet->putAndInsertOFStringArray(DCM_SeriesDescription,
                                              imageName_str.c_str());
    if (cond.bad()) return cond;
  }
  cond = dataSet->putAndInsertUint32(DCM_TotalPixelMatrixColumns, imageWidth);
  if (cond.bad()) return cond;
  cond = dataSet->putAndInsertUint32(DCM_TotalPixelMatrixRows, imageHeight);
  if (firstLevelWidthMm > 0 && firstLevelHeightMm > 0 && cond.good()) {
    cond =
        dataSet->putAndInsertFloat32(DCM_ImagedVolumeWidth, firstLevelWidthMm);
    if (cond.bad()) return cond;
    cond = dataSet->putAndInsertFloat32(DCM_ImagedVolumeHeight,
                                        firstLevelHeightMm);
  }
  return cond;
}