X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Doc%2FWebsite%2FNews.html;h=9b8e5fba7c19939da00f1d6dbcc71c11a31b71de;hb=bcbba24e317b815f9ae86263001d97551c3e8db3;hp=633b6e6e440dbec262a5490cd678af0b97293a3c;hpb=c96275c8881429e3d6448fc7c16a2c324ffc4883;p=gdcm.git diff --git a/Doc/Website/News.html b/Doc/Website/News.html index 633b6e6e..9b8e5fba 100644 --- a/Doc/Website/News.html +++ b/Doc/Website/News.html @@ -146,7 +146,7 @@ Any contribution is welcome.
  • 3) user created a new image, using existing images (eg MIP, MPR, cartography image)
    c : CREATED_IMAGE - wq
  • +
  • 4) user modified/added some tags *without processing* the pixels (anonymization, etc)
    c : UNMODIFIED_PIXELS_IMAGE @@ -205,6 +205,10 @@ Any contribution is welcome. New() and Delete()
  • Register() and Unregister() methods are available. +
  • --> Well ... People from ITK don't seem to agree too much with + that feature.
    + They demand to be allowed to allocate gdcm objects in the stack as + well, not only in the heap.
  • @@ -214,7 +218,75 @@ Any contribution is welcome.
  • Stupid difference between gdcm::ValEntry and gdcm::BinEntry removed.
    Only gdcm::DataEntry exist, now.
    -
  • +
    +   ValEntry(DictEntry *e);
    +   BinEntry(DictEntry *e);
    +-->DataEntry *New(uint16_t group,uint16_t elem, VRKey const &vr);
    +
    +   std::string const &ValEntry::GetValue() const;
    +   std::string const &BinEntry::GetValue() const;
    +-->std::string const &DataEntry::GetString() const;
    +
    +   uint8_t *BinEntry::GetBinArea();
    +-->uint8_t *DataEntry::GetBinArea();
    +
    +   void ValEntry::SetValue(std::string const &value);
    +   void BinEntry::SetValue(std::string const &value);   
    +-->void DataEntry::SetString(std::string const &value);
    +
    +   void BinEntry::SetBinArea( uint8_t *area, bool self = true );
    +-->void DataEntry::SetBinArea( uint8_t *area, bool self = true );
    +
    +   void ValEntry::CopyValEntry(uint16_t gr, uint16_t el);
    +-->void DataEntry::CopyDataEntry(uint16_t gr, uint16_t el, VRKey const &vr);
    +
    + +
    +Example :
    +
    +old way :
    +        DocEntry *p3 = item2->GetDocEntry(0x0018,0x0050);
    +        if( !p3 ) return false;
    +        ContentEntry *entry2 = dynamic_cast(p3);
    +        std::string thickness = entry2->GetValue();
    +
    +new way :
    +        DocEntry *p3 = item2->GetDocEntry(0x0018,0x0050);
    +        if( !p3 ) return false;
    +        DataEntry *entry2 = dynamic_cast(p3);
    +        std::string thickness = entry2->GetString();
    +
    +
    + +
  • Avoid tons of CPU time consuming accesses to DICOM Dictionnary +
    +   DataEntry *FileHelper::CopyDataEntry(uint16_t group, uint16_t elem);
    +-->DataEntry *FileHelper::CopyDataEntry(uint16_t group, uint16_t elem, 
    +                                        const VRKey &vr = GDCM_VRUNKNOWN);
    +
    +   void FileHelper::CheckMandatoryEntry(uint16_t group, uint16_t elem, std::string value);
    +-->void FileHelper::CheckMandatoryEntry(uint16_t group, uint16_t elem, std::string value,
    +                                        const VRKey &vr = GDCM_VRUNKNOWN);
    +      
    +   void FileHelper::SetMandatoryEntry(uint16_t group, uint16_t elem, std::string value);       
    +-->void FileHelper::SetMandatoryEntry(uint16_t group, uint16_t elem, std::string value,
    +                                      const VRKey &vr = GDCM_VRUNKNOWN);
    +
    +   void FileHelper::CopyMandatoryEntry(uint16_t group, uint16_t elem, std::string value);      
    +-->void FileHelper::CopyMandatoryEntry(uint16_t group, uint16_t elem, std::string value,
    +                                       const VRKey &vr = GDCM_VRUNKNOWN);
    +
    +CopyMandatoryEntry(0x0002,0x0003,sop) +
  • New features : +
    +For multivaluated numeric DataEntries
    +-->void DataEntry::SetValue(const uint32_t &id,const double &val);
    +-->double DataEntry::GetValue(const uint32_t &id) const;
    +-->uint32_t DataEntry::GetValueCount() const;
    +
    +For converting 'Decimal String'
    +-->bool GetDSValue(std::vector <double> &valueVector);  
    +