!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/usr/include/gdcm-3.0/   drwxr-xr-x
Free 13.37 GB of 57.97 GB (23.07%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     gdcmFileAnonymizer.h (2.85 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*=========================================================================

  Program: GDCM (Grassroots DICOM). A DICOM library

  Copyright (c) 2006-2011 Mathieu Malaterre
  All rights reserved.
  See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.

     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notice for more information.

=========================================================================*/
#ifndef GDCMFILEANONYMIZER_H
#define GDCMFILEANONYMIZER_H

#include "gdcmSubject.h"
#include "gdcmEvent.h"
#include "gdcmTag.h"
#include "gdcmVL.h"

namespace gdcm
{
class FileAnonymizerInternals;

/**
 * \brief FileAnonymizer
 *
 * \details This Anonymizer is a file-based Anonymizer. It requires a valid DICOM
 * file and will use the Value Length to skip over any information.
 *
 * It will not load the DICOM dataset taken from SetInputFileName() into memory
 * and should consume much less memory than Anonymizer.
 *
 * \warning: Each time you call Replace() with a value. This value will copied,
 * and stored in memory.  The behavior is not ideal for extremely large data
 * (larger than memory size). This class is really meant to take a large DICOM
 * input file and then only changed some small attribute.
 *
 * caveats:
 * \li This class will NOT work with unordered attributes in a DICOM File,
 * \li This class does neither recompute nor update the Group Length element,
 * \li This class currently does not update the File Meta Information header.
 * \li Only strict inplace Replace operation is supported when input and output
 *     file are the same.
 */
class GDCM_EXPORT FileAnonymizer : public Subject
{
public:
  FileAnonymizer();
  ~FileAnonymizer() override;

  /// Make Tag t empty
  /// Warning: does not handle SQ element
  void Empty( Tag const &t );

  /// remove a tag (even a SQ can be removed)
  void Remove( Tag const &t );

  /// Replace tag with another value, if tag is not found it will be created:
  /// WARNING: this function can only execute if tag is a VRASCII
  /// WARNING: Do not ever try to write a value in a SQ Data Element !
  void Replace( Tag const &t, const char *value_str );

  /// when the value contains \0, it is a good idea to specify the length. This function
  /// is required when dealing with VRBINARY tag
  void Replace( Tag const &t, const char *value_data, VL const & vl );

  /// Set input filename
  void SetInputFileName(const char *filename_native);

  /// Set output filename
  void SetOutputFileName(const char *filename_native);

  /// Write the output file
  bool Write();

private:
  bool ComputeEmptyTagPosition();
  bool ComputeRemoveTagPosition();
  bool ComputeReplaceTagPosition();
  FileAnonymizerInternals *Internals;
};

} // end namespace gdcm

#endif //GDCMFILEANONYMIZER_H

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0043 ]--