Logo ROOT   6.10/09
Reference Guide
TImagePlugin.h
Go to the documentation of this file.
1 // @(#)root/graf:$Id$
2 // Author: Valeriy Onuchin 23/06/05
3 
4 /*************************************************************************
5  * Copyright (C) 2001-2002, Rene Brun, Fons Rademakers and Reiner Rohlfs *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TImagePlugin
13 #define ROOT_TImagePlugin
14 
15 
16 #include "TObject.h"
17 
18 #include "TString.h"
19 
20 
21 class TImagePlugin : public TObject {
22 
23 protected:
24  TString fExtension; ///< file extension
25 
26 public:
27  TImagePlugin(const char *ext) { fExtension = ext; }
28  virtual ~TImagePlugin() { }
29 
30  virtual unsigned char *ReadFile(const char *filename, UInt_t &w, UInt_t &h) = 0;
31  virtual Bool_t WriteFile(const char *filename, unsigned char *argb, UInt_t w, UInt_t h) = 0;
32  ULong_t Hash() const { return fExtension.Hash(); }
33 
34  ClassDef(TImagePlugin, 0) // base class for different image format handlers(plugins)
35 };
36 
37 #endif
TH1 * h
Definition: legend2.C:5
Basic string class.
Definition: TString.h:129
bool Bool_t
Definition: RtypesCore.h:59
UInt_t Hash(ECaseCompare cmp=kExact) const
Return hash value.
Definition: TString.cxx:616
virtual ~TImagePlugin()
Definition: TImagePlugin.h:28
#define ClassDef(name, id)
Definition: Rtypes.h:297
TString fExtension
file extension
Definition: TImagePlugin.h:24
ULong_t Hash() const
Return hash value for this object.
Definition: TImagePlugin.h:32
unsigned int UInt_t
Definition: RtypesCore.h:42
TImagePlugin(const char *ext)
Definition: TImagePlugin.h:27
unsigned long ULong_t
Definition: RtypesCore.h:51
Mother of all ROOT objects.
Definition: TObject.h:37
virtual Bool_t WriteFile(const char *filename, unsigned char *argb, UInt_t w, UInt_t h)=0
virtual unsigned char * ReadFile(const char *filename, UInt_t &w, UInt_t &h)=0