00001 /* 00002 * 00003 * Copyright (C) 1996-2010, OFFIS e.V. 00004 * All rights reserved. See COPYRIGHT file for details. 00005 * 00006 * This software and supporting documentation were developed by 00007 * 00008 * OFFIS e.V. 00009 * R&D Division Health 00010 * Escherweg 2 00011 * D-26121 Oldenburg, Germany 00012 * 00013 * 00014 * Module: dcmimgle 00015 * 00016 * Author: Joerg Riesmeier 00017 * 00018 * Purpose: DicomRegisterBase (Header) 00019 * 00020 * Last Update: $Author: joergr $ 00021 * Update Date: $Date: 2010-10-14 13:16:27 $ 00022 * CVS/RCS Revision: $Revision: 1.8 $ 00023 * Status: $State: Exp $ 00024 * 00025 * CVS/RCS Log at end of file 00026 * 00027 */ 00028 00029 00030 #ifndef DIREGBAS_H 00031 #define DIREGBAS_H 00032 00033 #include "dcmtk/config/osconfig.h" 00034 00035 #include "dcmtk/dcmimgle/diutils.h" 00036 00037 00038 /*------------------------* 00039 * forward declarations * 00040 *------------------------*/ 00041 00042 class DiImage; 00043 class DiColorImage; 00044 class DiMonoPixel; 00045 class DiDocument; 00046 class DiRegisterBase; 00047 00048 00049 /*---------------------* 00050 * class declaration * 00051 *---------------------*/ 00052 00055 class DiRegisterBase 00056 { 00057 00058 public: 00059 00062 DiRegisterBase() 00063 { 00064 } 00065 00068 virtual ~DiRegisterBase() 00069 { 00070 } 00071 00080 virtual DiImage *createImage(const DiDocument *docu, 00081 const EI_Status status, 00082 const EP_Interpretation photo) = 0; 00083 00093 virtual DiMonoPixel *createMonoImageData(const DiColorImage *image, 00094 const double red, 00095 const double green, 00096 const double blue) = 0; 00097 00099 static DiRegisterBase *Pointer; 00100 }; 00101 00102 00103 #endif 00104 00105 00106 /* 00107 * 00108 * CVS/RCS Log: 00109 * $Log: diregbas.h,v $ 00110 * Revision 1.8 2010-10-14 13:16:27 joergr 00111 * Updated copyright header. Added reference to COPYRIGHT file. 00112 * 00113 * Revision 1.7 2005-12-08 16:48:07 meichel 00114 * Changed include path schema for all DCMTK header files 00115 * 00116 * Revision 1.6 2003/12/08 19:28:05 joergr 00117 * Removed leading underscore characters from preprocessor symbols (reserved 00118 * symbols). Updated CVS header. Updated copyright header. 00119 * 00120 * Revision 1.5 2001/06/01 15:49:50 meichel 00121 * Updated copyright header 00122 * 00123 * Revision 1.4 2000/03/08 16:24:23 meichel 00124 * Updated copyright header. 00125 * 00126 * Revision 1.3 1999/09/17 12:48:28 joergr 00127 * Added/changed/completed DOC++ style comments in the header files. 00128 * 00129 * Revision 1.2 1999/03/24 17:20:24 joergr 00130 * Added/Modified comments and formatting. 00131 * 00132 * Revision 1.1 1998/11/27 13:08:07 joergr 00133 * Added registration class to allow easy combination of both modules. 00134 * Added copyright message to all source files. 00135 * 00136 * 00137 */