DCMTK  Version 3.6.2
OFFIS DICOM Toolkit
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
DcmPixelSequence Class Reference

this class implements a sequence of pixel items, i.e. More...

+ Inheritance diagram for DcmPixelSequence:

Public Member Functions

 DcmPixelSequence (const DcmTag &tag)
 constructor More...
 
 DcmPixelSequence (const DcmPixelSequence &old)
 copy constructor More...
 
virtual ~DcmPixelSequence ()
 destructor
 
DcmPixelSequenceoperator= (const DcmPixelSequence &obj)
 copy assignment operator More...
 
virtual DcmObjectclone () const
 clone method More...
 
virtual OFCondition copyFrom (const DcmObject &rhs)
 Virtual object copying. More...
 
virtual DcmEVR ident (void) const
 get type identifier More...
 
virtual void print (STD_NAMESPACE ostream &out, const size_t flags=0, const int level=0, const char *pixelFileName=NULL, size_t *pixelCounter=NULL)
 print all elements of the item to a stream More...
 
virtual Uint32 calcElementLength (const E_TransferSyntax xfer, const E_EncodingType enctype)
 calculate the length of this DICOM element when encoded with the given transfer syntax and the given encoding type for sequences. More...
 
virtual OFCondition insert (DcmPixelItem *item, unsigned long where=DCM_EndOfListIndex)
 insert the given pixel item at the given position within the list maintained by this object. More...
 
virtual OFCondition getItem (DcmPixelItem *&item, const unsigned long num)
 access a pixel item from the pixel sequence. More...
 
virtual OFCondition remove (DcmPixelItem *&item, const unsigned long num)
 remove pixel item from list. More...
 
virtual OFCondition remove (DcmPixelItem *item)
 remove pixel item from list. More...
 
OFCondition changeXfer (const E_TransferSyntax newXfer)
 changes the transfer syntax of this object to the given one. More...
 
virtual OFBool canWriteXfer (const E_TransferSyntax newXfer, const E_TransferSyntax oldXfer)
 check if this DICOM object can be encoded in the given transfer syntax. More...
 
virtual OFCondition read (DcmInputStream &inStream, const E_TransferSyntax ixfer, const E_GrpLenEncoding glenc=EGL_noChange, const Uint32 maxReadLength=DCM_MaxReadLength)
 This function reads the information of all attributes which are captured in the input stream and captures this information in elementList. More...
 
virtual OFCondition write (DcmOutputStream &outStream, const E_TransferSyntax oxfer, const E_EncodingType enctype, DcmWriteCache *wcache)
 write object to a stream More...
 
virtual OFCondition writeXML (STD_NAMESPACE ostream &out, const size_t flags=0)
 write object in XML format More...
 
virtual OFCondition writeSignatureFormat (DcmOutputStream &outStream, const E_TransferSyntax oxfer, const E_EncodingType enctype, DcmWriteCache *wcache)
 special write method for creation of digital signatures More...
 
virtual OFCondition storeCompressedFrame (DcmOffsetList &offsetList, Uint8 *compressedData, Uint32 compressedLen, Uint32 fragmentSize)
 appends a single compressed frame to this DICOM pixel sequence More...
 
- Public Member Functions inherited from DcmSequenceOfItems
 DcmSequenceOfItems (const DcmTag &tag)
 constructor More...
 
 DcmSequenceOfItems (const DcmSequenceOfItems &oldSeq)
 copy constructor More...
 
virtual ~DcmSequenceOfItems ()
 destructor
 
DcmSequenceOfItemsoperator= (const DcmSequenceOfItems &obj)
 copy assignment operator More...
 
virtual int compare (const DcmElement &rhs) const
 comparison operator that compares the normalized value of this object with a given object of the same type. More...
 
OFCondition error () const
 returns current status flag
 
virtual OFBool isLeaf () const
 check if this element is a leaf node in a dataset tree. More...
 
virtual OFCondition checkValue (const OFString &card="1-n", const OFBool oldFormat=OFFalse)
 check whether stored value conforms to the VR and to the specified VM More...
 
virtual unsigned long getVM ()
 get value multiplicity More...
 
virtual OFCondition computeGroupLengthAndPadding (const E_GrpLenEncoding glenc, const E_PaddingEncoding padenc=EPD_noChange, const E_TransferSyntax xfer=EXS_Unknown, const E_EncodingType enctype=EET_ExplicitLength, const Uint32 padlen=0, const Uint32 subPadlen=0, Uint32 instanceLength=0)
 This function takes care of group length and padding elements in the current element list according to what is specified in glenc and padenc. More...
 
virtual Uint32 getLength (const E_TransferSyntax xfer=EXS_LittleEndianImplicit, const E_EncodingType enctype=EET_UndefinedLength)
 calculate the value length (without attribute tag, VR and length field) of this DICOM element when encoded with the given transfer syntax and the given encoding type for sequences. More...
 
virtual void transferInit ()
 initialize the transfer state of this object. More...
 
virtual void transferEnd ()
 finalize the transfer state of this object. More...
 
virtual OFCondition writeJson (STD_NAMESPACE ostream &out, DcmJsonFormat &format)
 write object in JSON format More...
 
virtual OFBool isSignable () const
 returns true if the current object may be included in a digital signature More...
 
virtual OFBool containsUnknownVR () const
 returns true if the object contains an element with Unknown VR at any nesting level More...
 
virtual OFBool containsExtendedCharacters (const OFBool checkAllStrings=OFFalse)
 check if this object contains non-ASCII characters at any nesting level. More...
 
virtual OFBool isAffectedBySpecificCharacterSet () const
 check if this object is affected by SpecificCharacterSet at any nesting level. More...
 
virtual OFCondition convertCharacterSet (DcmSpecificCharacterSet &converter)
 convert all element values that are contained in this item and that are affected by SpecificCharacterSet from the currently selected source character set to the currently selected destination character set More...
 
virtual unsigned long card () const
 get cardinality of this sequence More...
 
virtual OFCondition prepend (DcmItem *item)
 insert the given item at the start of the item list maintained by this sequence. More...
 
virtual OFCondition append (DcmItem *item)
 insert the given item at the end of the item list maintained by this sequence. More...
 
virtual OFCondition insertAtCurrentPos (DcmItem *item, OFBool before=OFFalse)
 insert new item a current position. More...
 
virtual OFCondition nextObject (DcmStack &stack, const OFBool intoSub)
 this method enables a stack based, depth-first traversal of a complete hierarchical DICOM dataset (that is, classes derived from DcmItem or DcmSequenceOfItems). More...
 
virtual DcmObjectnextInContainer (const DcmObject *obj)
 this method is only used in container classes, that is, DcmItem and DcmSequenceOfItems. More...
 
virtual OFBool isEmpty (const OFBool normalize=OFTrue)
 check if this sequence is empty More...
 
virtual OFCondition clear ()
 clear (remove) attribute value More...
 
virtual OFCondition verify (const OFBool autocorrect=OFFalse)
 check the currently stored element value More...
 
virtual OFCondition search (const DcmTagKey &xtag, DcmStack &resultStack, E_SearchMode mode=ESM_fromHere, OFBool searchIntoSub=OFTrue)
 a complex, stack-based, hierarchical search method. More...
 
virtual OFCondition loadAllDataIntoMemory (void)
 this method loads all attribute values maintained by this object and all sub-objects (in case of a container such as DcmDataset) into memory. More...
 
virtual OFCondition getPartialValue (void *targetBuffer, const Uint32 offset, Uint32 numBytes, DcmFileCache *cache=NULL, E_ByteOrder byteOrder=gLocalByteOrder)
 Copy numBytes bytes of data from the attribute value in byteOrder byte order to targetBuffer, starting at byte offset offset of the attribute value. More...
 
- Public Member Functions inherited from DcmElement
 DcmElement (const DcmTag &tag, const Uint32 len=0)
 constructor. More...
 
 DcmElement (const DcmElement &old)
 copy constructor More...
 
virtual ~DcmElement ()
 destructor
 
DcmElementoperator= (const DcmElement &obj)
 assignment operator More...
 
OFBool valueLoaded () const
 check if value of this element is loaded into main memory More...
 
virtual OFCondition getUint8 (Uint8 &val, const unsigned long pos=0)
 retrieve a single value of type Uint8. More...
 
virtual OFCondition getSint16 (Sint16 &val, const unsigned long pos=0)
 retrieve a single value of type Sint16. More...
 
virtual OFCondition getUint16 (Uint16 &val, const unsigned long pos=0)
 retrieve a single value of type Uint16. More...
 
virtual OFCondition getSint32 (Sint32 &val, const unsigned long pos=0)
 retrieve a single value of type Sint32. More...
 
virtual OFCondition getUint32 (Uint32 &val, const unsigned long pos=0)
 retrieve a single value of type Uint32. More...
 
virtual OFCondition getFloat32 (Float32 &val, const unsigned long pos=0)
 retrieve a single value of type Float32. More...
 
virtual OFCondition getFloat64 (Float64 &val, const unsigned long pos=0)
 retrieve a single value of type Float64. More...
 
virtual OFCondition getTagVal (DcmTagKey &val, const unsigned long pos=0)
 retrieve a single value of type DcmTagKey. More...
 
virtual OFCondition getOFString (OFString &str, const unsigned long pos, OFBool normalize=OFTrue)
 retrieve a single value of type string. More...
 
virtual OFCondition getOFStringArray (OFString &value, OFBool normalize=OFTrue)
 get entire element value as a character string. More...
 
virtual OFCondition getString (char *&val)
 get a pointer to the element value of the current element as type string. More...
 
virtual OFCondition getString (char *&val, Uint32 &len)
 get a pointer to the element value of the current element as type string. More...
 
virtual OFCondition getUint8Array (Uint8 *&val)
 get a pointer to the element value of the current element as type string. More...
 
virtual OFCondition getSint16Array (Sint16 *&val)
 get a pointer to the element value of the current element as type Sint16. More...
 
virtual OFCondition getUint16Array (Uint16 *&val)
 get a pointer to the element value of the current element as type Uint16. More...
 
virtual OFCondition getSint32Array (Sint32 *&val)
 get a pointer to the element value of the current element as type Sint32. More...
 
virtual OFCondition getUint32Array (Uint32 *&val)
 get a pointer to the element value of the current element as type Uint32. More...
 
virtual OFCondition getFloat32Array (Float32 *&val)
 get a pointer to the element value of the current element as type Float32. More...
 
virtual OFCondition getFloat64Array (Float64 *&val)
 get a pointer to the element value of the current element as type Float64. More...
 
OFCondition detachValueField (OFBool copy=OFFalse)
 detach the value field from the DICOM element (i.e., this object). More...
 
virtual OFCondition putOFStringArray (const OFString &val)
 replace the element value by a copy of the given string (which is possibly multi-valued). More...
 
virtual OFCondition putString (const char *val)
 replace the element value by a copy of the given string (which is possibly multi-valued). More...
 
virtual OFCondition putString (const char *val, const Uint32 len)
 replace the element value by a copy of the given string (which is possibly multi-valued). More...
 
virtual OFCondition putSint16 (const Sint16 val, const unsigned long pos=0)
 insert into the element value a copy of the given Sint16 value. More...
 
virtual OFCondition putUint16 (const Uint16 val, const unsigned long pos=0)
 insert into the element value a copy of the given Uint16 value. More...
 
virtual OFCondition putSint32 (const Sint32 val, const unsigned long pos=0)
 insert into the element value a copy of the given Sint32 value. More...
 
virtual OFCondition putUint32 (const Uint32 val, const unsigned long pos=0)
 insert into the element value a copy of the given Uint32 value. More...
 
virtual OFCondition putFloat32 (const Float32 val, const unsigned long pos=0)
 insert into the element value a copy of the given Float32 value. More...
 
virtual OFCondition putFloat64 (const Float64 val, const unsigned long pos=0)
 insert into the element value a copy of the given Float64 value. More...
 
virtual OFCondition putTagVal (const DcmTagKey &attrTag, const unsigned long pos=0)
 insert into the element value a copy of the given DcmTagKey value. More...
 
virtual OFCondition putUint8Array (const Uint8 *vals, const unsigned long num)
 replace the element value by a copy of the given Uint8 array (which is possibly multi-valued). More...
 
virtual OFCondition putSint16Array (const Sint16 *vals, const unsigned long num)
 replace the element value by a copy of the given Sint16 array (which is possibly multi-valued). More...
 
virtual OFCondition putUint16Array (const Uint16 *vals, const unsigned long num)
 replace the element value by a copy of the given Uint16 array (which is possibly multi-valued). More...
 
virtual OFCondition putSint32Array (const Sint32 *vals, const unsigned long num)
 replace the element value by a copy of the given Sint32 array (which is possibly multi-valued). More...
 
virtual OFCondition putUint32Array (const Uint32 *vals, const unsigned long num)
 replace the element value by a copy of the given Uint32 array (which is possibly multi-valued). More...
 
virtual OFCondition putFloat32Array (const Float32 *vals, const unsigned long num)
 replace the element value by a copy of the given Float32 array (which is possibly multi-valued). More...
 
virtual OFCondition putFloat64Array (const Float64 *vals, const unsigned long num)
 replace the element value by a copy of the given Float64 array (which is possibly multi-valued). More...
 
virtual OFCondition createUint8Array (const Uint32 numBytes, Uint8 *&bytes)
 create an empty Uint8 array of given number of bytes and set it. More...
 
virtual OFCondition createUint16Array (const Uint32 numWords, Uint16 *&words)
 create an empty Uint16 array of given number of words and set it. More...
 
virtual OFCondition createValueFromTempFile (DcmInputStreamFactory *factory, const Uint32 length, const E_ByteOrder byteOrder)
 replace the attribute value with the content of the given temporary file. More...
 
virtual void compact ()
 remove the attribute value from memory if the attribute value can be loaded from file when needed again. More...
 
virtual OFCondition getUncompressedFrameSize (DcmItem *dataset, Uint32 &frameSize) const
 compute uncompressed frame size of a single frame of this image. More...
 
virtual OFCondition getUncompressedFrame (DcmItem *dataset, Uint32 frameNo, Uint32 &startFragment, void *buffer, Uint32 bufSize, OFString &decompressedColorModel, DcmFileCache *cache=NULL)
 access single frame without decompressing or loading a complete multi-frame object. More...
 
virtual OFCondition getDecompressedColorModel (DcmItem *dataset, OFString &decompressedColorModel)
 determine color model of the decompressed image More...
 
virtual OFBool matches (const DcmElement &candidate, const OFBool enableWildCardMatching=OFTrue) const
 perform attribute matching. More...
 
virtual OFBool combinationMatches (const DcmElement &keySecond, const DcmElement &candidateFirst, const DcmElement &candidateSecond) const
 perform combined attribute matching. More...
 
- Public Member Functions inherited from DcmObject
 DcmObject (const DcmTag &tag, const Uint32 len=0)
 constructor. More...
 
 DcmObject (const DcmObject &obj)
 copy constructor More...
 
virtual ~DcmObject ()
 destructor
 
DcmObjectoperator= (const DcmObject &obj)
 copy assignment operator More...
 
DcmEVR getVR () const
 return the value representation assigned to this object. More...
 
OFBool isaString () const
 check if this element is a string type, based on the VR. More...
 
virtual OFBool isNested () const
 check if this element is nested in a sequence of items, i.e. not a top-level or stand-alone element More...
 
E_TransferState transferState () const
 return the current transfer (read/write) state of this object. More...
 
DcmItemgetRootItem ()
 get root dataset/item (top-level) that contains this object. More...
 
virtual DcmItemgetParentItem ()
 get parent item of this object. More...
 
DcmObjectgetParent ()
 get parent of this object. More...
 
const DcmObjectgetParent () const
 get parent of this object. More...
 
void setParent (DcmObject *parent)
 set parent of this object. More...
 
Uint16 getGTag () const
 return the group number of the attribute tag for this object More...
 
Uint16 getETag () const
 return the element number of the attribute tag for this object More...
 
const DcmTaggetTag () const
 return const reference to the attribute tag for this object More...
 
void setGTag (Uint16 gtag)
 assign group tag (but not element tag) of the attribute tag for this object. More...
 
virtual OFCondition setVR (DcmEVR)
 assign a new Value Representation (VR) to this object. More...
 
Uint32 getLengthField () const
 return the current value of the Length field (which is different from the functionality of the public getLength() method). More...
 

Protected Member Functions

 DcmPixelSequence (const DcmTag &tag, const Uint32 len)
 constructor. More...
 
virtual OFCondition makeSubObject (DcmObject *&newObject, const DcmTag &newTag, const Uint32 newLength)
 helper function for read(). More...
 
- Protected Member Functions inherited from DcmSequenceOfItems
 DcmSequenceOfItems (const DcmTag &tag, const Uint32 len, OFBool readAsUN=OFFalse)
 constructor. More...
 
virtual OFCondition readTagAndLength (DcmInputStream &inStream, const E_TransferSyntax xfer, DcmTag &tag, Uint32 &length)
 This function reads tag and length information from inStream and returns this information to the caller. More...
 
OFCondition readSubItem (DcmInputStream &inStream, const DcmTag &newTag, const Uint32 newLength, const E_TransferSyntax xfer, const E_GrpLenEncoding glenc, const Uint32 maxReadLength=DCM_MaxReadLength)
 helper function for read(). More...
 
virtual OFCondition searchSubFromHere (const DcmTagKey &tag, DcmStack &resultStack, const OFBool searchIntoSub)
 helper function for search(). More...
 
- Protected Member Functions inherited from DcmElement
void * getValue (const E_ByteOrder newByteOrder=gLocalByteOrder)
 This function returns this element's value. More...
 
OFCondition changeValue (const void *value, const Uint32 position, const Uint32 num)
 insert into the element value a copy of the given raw value. More...
 
OFCondition putValue (const void *value, const Uint32 length)
 replace the element value by a copy of the given raw data block More...
 
OFCondition createEmptyValue (const Uint32 length)
 create a new, empty value field of given size. More...
 
OFCondition loadValue (DcmInputStream *inStream=NULL)
 This function reads the data value of an attribute and stores the information which was read in this. More...
 
virtual void postLoadValue ()
 performs clean-up functions after loading an attribute value into main memory. More...
 
virtual Uint8 * newValueField ()
 This function creates a byte array of Length bytes and returns this array. More...
 
void swapValueField (size_t valueWidth)
 swaps the content of the value field (if loaded) from big-endian to little-endian or back More...
 
virtual void writeXMLStartTag (STD_NAMESPACE ostream &out, const size_t flags, const char *attrText=NULL)
 write element start tag in XML format More...
 
virtual void writeXMLEndTag (STD_NAMESPACE ostream &out, const size_t flags)
 write element end tag in XML format More...
 
virtual void writeJsonOpener (STD_NAMESPACE ostream &out, DcmJsonFormat &format)
 write element start tag in JSON format More...
 
virtual void writeJsonCloser (STD_NAMESPACE ostream &out, DcmJsonFormat &format)
 write element end tag in JSON format More...
 
E_ByteOrder getByteOrder () const
 return the current byte order of the value field More...
 
void setByteOrder (E_ByteOrder val)
 set the current byte order of the value field More...
 
- Protected Member Functions inherited from DcmObject
void printNestingLevel (STD_NAMESPACE ostream &out, const size_t flags, const int level)
 print line indentation, e.g. a couple of spaces for each nesting level. More...
 
void printInfoLineStart (STD_NAMESPACE ostream &out, const size_t flags, const int level, DcmTag *tag=NULL)
 print beginning of the info line. More...
 
void printInfoLineEnd (STD_NAMESPACE ostream &out, const size_t flags, const unsigned long printedLength=0xffffffff, DcmTag *tag=NULL)
 print end of the info line. More...
 
virtual void printInfoLine (STD_NAMESPACE ostream &out, const size_t flags, const int level=0, const char *info=NULL, DcmTag *tag=NULL, const OFBool isInfo=OFTrue)
 print given text with element information. More...
 
virtual OFCondition writeTagAndLength (DcmOutputStream &outStream, const E_TransferSyntax oxfer, Uint32 &writtenBytes) const
 write tag, VR and length field to the given output stream More...
 
virtual Uint32 getTagAndLengthSize (const E_TransferSyntax oxfer) const
 return the number of bytes needed to serialize the tag, VR and length information of the current object using the given transfer syntax. More...
 
const char * getTagName ()
 return the DICOM attribute tag name for this object. More...
 
void setTagVR (DcmEVR vr)
 set the VR for this attribute More...
 
E_TransferState getTransferState () const
 return the current transfer state of this object during serialization/deserialization More...
 
void setTransferState (E_TransferState newState)
 set the current transfer state of this object during serialization/deserialization More...
 
Uint32 getTransferredBytes () const
 return the number of transferred bytes for this object during serialization/deserialization More...
 
void setTransferredBytes (Uint32 val)
 set the number of transferred bytes for this object during serialization/deserialization More...
 
void incTransferredBytes (Uint32 val)
 add to the number of transferred bytes for this object during serialization/deserialization More...
 
void setLengthField (Uint32 val)
 set the current value of the Length field More...
 

Private Member Functions

virtual OFCondition insert (DcmItem *, unsigned long=DCM_EndOfListIndex, OFBool=OFFalse)
 method inherited from base class that is useless in this class
 
virtual DcmItemgetItem (const unsigned long)
 method inherited from base class that is useless in this class
 
virtual DcmItemremove (const unsigned long)
 method inherited from base class that is useless in this class
 
virtual DcmItemremove (DcmItem *)
 method inherited from base class that is useless in this class
 

Private Attributes

E_TransferSyntax Xfer
 the transfer syntax in which the compressed pixel data maintained by this object is encoded. More...
 

Friends

class DcmPixelData
 

Additional Inherited Members

- Static Public Member Functions inherited from DcmElement
static int scanValue (const OFString &value, const OFString &vr, const size_t pos=0, const size_t num=OFString_npos)
 scan string value for conformance with given value representation (VR) More...
 
static unsigned long determineVM (const char *str, const size_t len)
 determine the number of values stored in a string, i.e. the value multiplicity (VM) More...
 
static size_t getValueFromString (const char *str, const size_t pos, const size_t len, OFString &val)
 get the first value stored in the given string. More...
 
static OFCondition checkVM (const unsigned long vmNum, const OFString &vmStr)
 check for correct value multiplicity (VM) More...
 
- Static Protected Member Functions inherited from DcmObject
static OFCondition writeTag (DcmOutputStream &outStream, const DcmTag &tag, const E_TransferSyntax oxfer)
 static helper function that writes a given attribute tag to a binary output stream using the byte order indicated by the transfer syntax. More...
 
- Protected Attributes inherited from DcmSequenceOfItems
DcmListitemList
 the list of items maintained by this sequence object
 
- Protected Attributes inherited from DcmObject
OFCondition errorFlag
 error flag for this object.
 

Detailed Description

this class implements a sequence of pixel items, i.e.

the data structure DICOM is using to store compressed pixel data. The object behaves very much like a sequence, but uses the pixel data tag (7FE0,0010) and OB value representation with undefined length, and the "items" contained within the sequence are in fact pixel items (class DcmPixelItem) that contain no list of DICOM elements but raw compressed pixel data. The first item in this pixel sequence must always be the offset table.

Constructor & Destructor Documentation

◆ DcmPixelSequence() [1/3]

DcmPixelSequence::DcmPixelSequence ( const DcmTag tag)

constructor

Parameters
tagattribute tag

◆ DcmPixelSequence() [2/3]

DcmPixelSequence::DcmPixelSequence ( const DcmPixelSequence old)

copy constructor

Parameters
oldelement to be copied

◆ DcmPixelSequence() [3/3]

DcmPixelSequence::DcmPixelSequence ( const DcmTag tag,
const Uint32  len 
)
protected

constructor.

Create new element from given tag and length. Only reachable from friend classes since construction with length different from 0 leads to a state with length being set but the element's value still being uninitialized. This can lead to crashes when the value is read or written. Thus the method calling this constructor with length > 0 must ensure that the element's value is explicitly initialized, too.

Parameters
tagattribute tag
lenlength of the attribute value

Member Function Documentation

◆ calcElementLength()

virtual Uint32 DcmPixelSequence::calcElementLength ( const E_TransferSyntax  xfer,
const E_EncodingType  enctype 
)
virtual

calculate the length of this DICOM element when encoded with the given transfer syntax and the given encoding type for sequences.

For elements, the length includes the length of the tag, length field, VR field and the value itself, for items and sequences it returns the length of the complete item or sequence including delimitation tags if applicable. Never returns undefined length.

Parameters
xfertransfer syntax for length calculation
enctypesequence encoding type for length calculation
Returns
length of DICOM element

Reimplemented from DcmSequenceOfItems.

◆ canWriteXfer()

virtual OFBool DcmPixelSequence::canWriteXfer ( const E_TransferSyntax  newXfer,
const E_TransferSyntax  oldXfer 
)
virtual

check if this DICOM object can be encoded in the given transfer syntax.

Parameters
newXfertransfer syntax in which the DICOM object is to be encoded
oldXfertransfer syntax in which the DICOM object was read or created.
Returns
true if object can be encoded in desired transfer syntax, false otherwise.

Reimplemented from DcmSequenceOfItems.

◆ changeXfer()

OFCondition DcmPixelSequence::changeXfer ( const E_TransferSyntax  newXfer)

changes the transfer syntax of this object to the given one.

This only works if no transfer syntax was defined so far, or if the new and the old one are identical.

Parameters
newXfer
Returns
status, EC_Normal if successful, an error code otherwise

◆ clone()

virtual DcmObject* DcmPixelSequence::clone ( ) const
inlinevirtual

clone method

Returns
deep copy of this object

Reimplemented from DcmSequenceOfItems.

References DcmSequenceOfItems::copyFrom().

◆ copyFrom()

virtual OFCondition DcmPixelSequence::copyFrom ( const DcmObject rhs)
virtual

Virtual object copying.

This method can be used for DcmObject and derived classes to get a deep copy of an object. Internally the assignment operator is called if the given DcmObject parameter is of the same type as "this" object instance. If not, an error is returned. This function permits copying an object by value in a virtual way which therefore is different to just calling the assignment operator of DcmElement which could result in slicing the object.

Parameters
rhs- [in] The instance to copy from. Has to be of the same class type as "this" object
Returns
EC_Normal if copying was successful, error otherwise

Reimplemented from DcmSequenceOfItems.

◆ getItem()

virtual OFCondition DcmPixelSequence::getItem ( DcmPixelItem *&  item,
const unsigned long  num 
)
virtual

access a pixel item from the pixel sequence.

This method returns a pointer to one of the pixel items in the list, and not a copy.

Parameters
itemupon success, a pointer to the selected pixel item is returned in this parameter
numindex number of pixel item, must be < card()
Returns
pointer to item if found, NULL if num >= card()

◆ ident()

virtual DcmEVR DcmPixelSequence::ident ( void  ) const
inlinevirtual

◆ insert()

virtual OFCondition DcmPixelSequence::insert ( DcmPixelItem item,
unsigned long  where = DCM_EndOfListIndex 
)
virtual

insert the given pixel item at the given position within the list maintained by this object.

Ownership of the pixel item, which must be allocated on the heap, is transferred to the pixel sequence.

Parameters
itempointer to DcmPixelItem instance allocated on the heap, must not be NULL.
whereposition at which the new item is to be inserted.
Returns
EC_Normal if successful, an error code otherwise

◆ makeSubObject()

virtual OFCondition DcmPixelSequence::makeSubObject ( DcmObject *&  newObject,
const DcmTag newTag,
const Uint32  newLength 
)
protectedvirtual

helper function for read().

Create sub-object (pixel item) of the appropriate type depending on the tag.

Parameters
newObjectupon success, a pointer to the newly created object is returned in this parameter
newTagtag of the sub-object to be created
newLengthlength of the sub-object to be created
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmSequenceOfItems.

◆ operator=()

DcmPixelSequence& DcmPixelSequence::operator= ( const DcmPixelSequence obj)

copy assignment operator

Parameters
objelement to be copied
Returns
reference to this object

◆ print()

virtual void DcmPixelSequence::print ( STD_NAMESPACE ostream &  out,
const size_t  flags = 0,
const int  level = 0,
const char *  pixelFileName = NULL,
size_t *  pixelCounter = NULL 
)
virtual

print all elements of the item to a stream

Parameters
outoutput stream
flagsoptional flag used to customize the output (see DCMTypes::PF_xxx)
levelcurrent level of nested items. Used for indentation.
pixelFileNameoptional filename used to write the raw pixel data file
pixelCounteroptional counter used for automatic pixel data filename creation

Reimplemented from DcmSequenceOfItems.

◆ read()

virtual OFCondition DcmPixelSequence::read ( DcmInputStream inStream,
const E_TransferSyntax  ixfer,
const E_GrpLenEncoding  glenc = EGL_noChange,
const Uint32  maxReadLength = DCM_MaxReadLength 
)
virtual

This function reads the information of all attributes which are captured in the input stream and captures this information in elementList.

Each attribute is represented as an element in this list. If not all information for an attribute could be read from the stream, the function returns EC_StreamNotifyClient.

Parameters
inStreamThe stream which contains the information.
ixferThe transfer syntax which was used to encode the information in inStream.
glencEncoding type for group length; specifies what will be done with group length tags.
maxReadLengthMaximum read length for reading an attribute value.
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmSequenceOfItems.

◆ remove() [1/2]

virtual OFCondition DcmPixelSequence::remove ( DcmPixelItem *&  item,
const unsigned long  num 
)
virtual

remove pixel item from list.

If found, the pixel item is not deleted but returned to the caller who is responsible for further management of the DcmPixelItem object.

Parameters
itemupon success, a pointer to the removed pixel item is returned in this parameter
numindex number of item, must be < card()
Returns
EC_Normal if successful, an error code otherwise

◆ remove() [2/2]

virtual OFCondition DcmPixelSequence::remove ( DcmPixelItem item)
virtual

remove pixel item from list.

Tthe pixel item is not deleted; the caller is responsible for further management of the DcmPixelItem object.

Parameters
itempointer to element to be removed from list
Returns
EC_Normal if successful, an error code otherwise

◆ storeCompressedFrame()

virtual OFCondition DcmPixelSequence::storeCompressedFrame ( DcmOffsetList offsetList,
Uint8 *  compressedData,
Uint32  compressedLen,
Uint32  fragmentSize 
)
virtual

appends a single compressed frame to this DICOM pixel sequence

Parameters
offsetListlist containing offset table entries. Upon success, an entry is appended to the list. The offset values are always even, so it is expected that odd length pixel items are padded later during writing. The offsets are not stored internally.
compressedDatapointer to compressed image data (copied), must not be NULL
compressedLennumber of bytes of compressed image data
fragmentSizemaximum fragment size (in kbytes) for compression, 0 for unlimited.
Returns
EC_Normal if successful, an error code otherwise

◆ write()

virtual OFCondition DcmPixelSequence::write ( DcmOutputStream outStream,
const E_TransferSyntax  oxfer,
const E_EncodingType  enctype,
DcmWriteCache wcache 
)
virtual

write object to a stream

Parameters
outStreamDICOM output stream
oxferoutput transfer syntax
enctypeencoding types (undefined or explicit length)
wcachepointer to write cache object, may be NULL
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmSequenceOfItems.

◆ writeSignatureFormat()

virtual OFCondition DcmPixelSequence::writeSignatureFormat ( DcmOutputStream outStream,
const E_TransferSyntax  oxfer,
const E_EncodingType  enctype,
DcmWriteCache wcache 
)
virtual

special write method for creation of digital signatures

Parameters
outStreamDICOM output stream
oxferoutput transfer syntax
enctypeencoding types (undefined or explicit length)
wcachepointer to write cache object, may be NULL
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmSequenceOfItems.

◆ writeXML()

virtual OFCondition DcmPixelSequence::writeXML ( STD_NAMESPACE ostream &  out,
const size_t  flags = 0 
)
virtual

write object in XML format

Parameters
outoutput stream to which the XML document is written
flagsoptional flag used to customize the output (see DCMTypes::XF_xxx)
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmSequenceOfItems.

Member Data Documentation

◆ Xfer

E_TransferSyntax DcmPixelSequence::Xfer
private

the transfer syntax in which the compressed pixel data maintained by this object is encoded.

This may very well differ from the transfer syntax of the main dataset if this object was created by a compression codec in memory.


The documentation for this class was generated from the following file:


Generated on Mon Jul 17 2017 for DCMTK Version 3.6.2 by Doxygen 1.8.13