]> Creatis software - gdcm.git/blob - src/gdcmBinEntry.cxx
* src/gdcmBinEntry.cxx, gdcmValEntry.cxx: gdcmBinEntry::Print() now
[gdcm.git] / src / gdcmBinEntry.cxx
1 /*=========================================================================
2                                                                                 
3   Program:   gdcm
4   Module:    $RCSfile: gdcmBinEntry.cxx,v $
5   Language:  C++
6   Date:      $Date: 2004/06/21 12:38:28 $
7   Version:   $Revision: 1.12 $
8                                                                                 
9   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10   l'Image). All rights reserved. See Doc/License.txt or
11   http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
12                                                                                 
13      This software is distributed WITHOUT ANY WARRANTY; without even
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15      PURPOSE.  See the above copyright notices for more information.
16                                                                                 
17 =========================================================================*/
18
19 #include "gdcmBinEntry.h"
20 #include "gdcmDebug.h"
21
22
23 //-----------------------------------------------------------------------------
24 // Constructor / Destructor
25
26 /**
27  * \brief   Constructor from a given gdcmBinEntry
28  */
29 gdcmBinEntry::gdcmBinEntry(gdcmDictEntry* e) : gdcmValEntry(e)
30 {
31    this->voidArea = NULL;
32 }
33
34 /**
35  * \brief   Constructor from a given gdcmBinEntry
36  * @param   e Pointer to existing Doc entry
37  */
38 gdcmBinEntry::gdcmBinEntry(gdcmDocEntry* e) : gdcmValEntry(e->GetDictEntry())
39 {
40    this->UsableLength = e->GetLength();
41    this->ReadLength   = e->GetReadLength();
42    this->ImplicitVR   = e->IsImplicitVR();
43    this->Offset       = e->GetOffset();
44    this->printLevel   = e->GetPrintLevel();
45    this->SQDepthLevel = e->GetDepthLevel();
46
47    this->voidArea = NULL; // let's be carefull !
48 }
49
50 /**
51  * \brief   Canonical destructor.
52  */
53 gdcmBinEntry::~gdcmBinEntry(){
54    if (voidArea)
55       free (voidArea);
56 }
57
58
59 //-----------------------------------------------------------------------------
60 // Print
61 /*
62  * \brief   canonical Printer
63  */
64  
65 void gdcmBinEntry::Print(std::ostream &os)
66 {
67    gdcmValEntry::Print(os);
68    std::ostringstream s;
69    if (voidArea != NULL)
70    {
71       s << " [gdcm::Binary data loaded with lenght is "
72         << GetLength() << "]"
73         << std::endl;
74    }
75    else
76    {
77       s << " [gdcm::Binary data NOT loaded]"
78         << std::endl;
79    }
80    os << s.str();
81 }
82 //-----------------------------------------------------------------------------
83 // Public
84
85 //-----------------------------------------------------------------------------
86 // Protected
87
88 //-----------------------------------------------------------------------------
89 // Private
90    
91 //-----------------------------------------------------------------------------