Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | Related Pages

dipixel.h

00001 /*
00002  *
00003  *  Copyright (C) 1996-2004, OFFIS
00004  *
00005  *  This software and supporting documentation were developed by
00006  *
00007  *    Kuratorium OFFIS e.V.
00008  *    Healthcare Information and Communication Systems
00009  *    Escherweg 2
00010  *    D-26121 Oldenburg, Germany
00011  *
00012  *  THIS SOFTWARE IS MADE AVAILABLE,  AS IS,  AND OFFIS MAKES NO  WARRANTY
00013  *  REGARDING  THE  SOFTWARE,  ITS  PERFORMANCE,  ITS  MERCHANTABILITY  OR
00014  *  FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES  OR
00015  *  ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY AND
00016  *  PERFORMANCE OF THE SOFTWARE IS WITH THE USER.
00017  *
00018  *  Module:  dcmimgle
00019  *
00020  *  Author:  Joerg Riesmeier
00021  *
00022  *  Purpose: DicomPixel (Header)
00023  *
00024  *  Last Update:      $Author: joergr $
00025  *  Update Date:      $Date: 2004/02/06 11:07:50 $
00026  *  CVS/RCS Revision: $Revision: 1.9 $
00027  *  Status:           $State: Exp $
00028  *
00029  *  CVS/RCS Log at end of file
00030  *
00031  */
00032 
00033 
00034 #ifndef DIPIXEL_H
00035 #define DIPIXEL_H
00036 
00037 #include "osconfig.h"
00038 #include "dctypes.h"
00039 
00040 #include "diutils.h"
00041 
00042 
00043 /*---------------------*
00044  *  class declaration  *
00045  *---------------------*/
00046 
00049 class DiPixel
00050 {
00051 
00052  public:
00053 
00059     DiPixel(const unsigned long count,
00060             const unsigned long inputCount = 0)
00061       : Count(count),
00062         InputCount(inputCount)
00063     {
00064     }
00065 
00068     virtual ~DiPixel()
00069     {
00070     }
00071 
00076     virtual EP_Representation getRepresentation() const = 0;
00077 
00082     virtual int getPlanes() const = 0;
00083 
00088     virtual const void *getData() const = 0;
00089 
00094     virtual void *getDataPtr() = 0;
00095 
00100     virtual void *getDataArrayPtr() = 0;
00101 
00106     inline unsigned long getCount() const
00107     {
00108         return Count;
00109     }
00110 
00115     inline unsigned long getInputCount() const
00116     {
00117         return InputCount;
00118     }
00119 
00120 
00121  protected:
00122 
00124     /*const*/ unsigned long Count;
00125 
00127     unsigned long InputCount;
00128 };
00129 
00130 
00131 #endif
00132 
00133 
00134 /*
00135  *
00136  * CVS/RCS Log:
00137  * $Log: dipixel.h,v $
00138  * Revision 1.9  2004/02/06 11:07:50  joergr
00139  * Distinguish more clearly between const and non-const access to pixel data.
00140  *
00141  * Revision 1.8  2003/12/09 10:07:16  joergr
00142  * Removed leading underscore characters from preprocessor symbols (reserved
00143  * symbols). Updated copyright header.
00144  *
00145  * Revision 1.7  2002/06/26 16:06:08  joergr
00146  * Enhanced handling of corrupted pixel data and/or length.
00147  *
00148  * Revision 1.6  2001/06/01 15:49:50  meichel
00149  * Updated copyright header
00150  *
00151  * Revision 1.5  2000/03/08 16:24:23  meichel
00152  * Updated copyright header.
00153  *
00154  * Revision 1.4  1999/09/17 12:47:51  joergr
00155  * Added/changed/completed DOC++ style comments in the header files.
00156  *
00157  * Revision 1.3  1999/03/24 17:20:22  joergr
00158  * Added/Modified comments and formatting.
00159  *
00160  * Revision 1.2  1999/01/20 15:12:10  joergr
00161  * Replaced invocation of getCount() by member variable Count where possible.
00162  *
00163  * Revision 1.1  1998/11/27 15:32:37  joergr
00164  * Added copyright message.
00165  * Introduced new pixel base class.
00166  *
00167  *
00168  */


Generated on 26 Apr 2005 for OFFIS DCMTK Version 3.5.3 by Doxygen 1.4.2