#ifndef ROOT_TImage
#define ROOT_TImage
#ifndef ROOT_TNamed
#include "TNamed.h"
#endif
#ifndef ROOT_TAttImage
#include "TAttImage.h"
#endif
#ifndef ROOT_GuiTypes
#include "GuiTypes.h"
#endif
#ifndef ROOT_TVectorDfwd
#include "TVectorDfwd.h"
#endif
class TVirtualPad;
class TArrayD;
class TArrayL;
class TH2D;
class TPoint;
class TImage : public TNamed, public TAttImage {
friend TImage operator+(const TImage &i1, const TImage &s2);
friend TImage operator/(const TImage &i1, const TImage &s2);
public:
enum EImageFileTypes {
kXpm = 0,
kZCompressedXpm,
kGZCompressedXpm,
kPng,
kJpeg,
kXcf,
kPpm,
kPnm,
kBmp,
kIco,
kCur,
kGif,
kTiff,
kXbm,
kFits,
kTga,
kXml,
kUnknown,
kAnimGif
};
enum EText3DType {
kPlain = 0,
kEmbossed,
kSunken,
kShadeAbove,
kShadeBelow,
kEmbossedThick,
kSunkenThick,
kOutlineAbove,
kOutlineBelow,
kOutlineFull,
k3DTypes
};
enum ECharType {
kUTF8 = 0,
kChar = 1,
kUnicode = 4
};
enum ETileType {
kStretch = 0,
kTile,
kStretchY,
kStretchX
};
enum ECoordMode {
kCoordModeOrigin = 0,
kCoordModePrevious
};
enum EColorChan {
kRedChan = BIT(0),
kGreenChan = BIT(1),
kBlueChan = BIT(2),
kAlphaChan = BIT(3),
kAllChan = kRedChan | kGreenChan | kBlueChan | kAlphaChan
};
protected:
TImage(const char *file) : TNamed(file, "") { }
TImage() { }
public:
TImage(const TImage &img) : TNamed(img), TAttImage(img) { }
TImage &operator=(const TImage &img)
{ TNamed::operator=(img); TAttImage::operator=(img); return *this; }
TImage(UInt_t , UInt_t ) : TNamed(), TAttImage() { }
virtual ~TImage() { }
virtual TObject *Clone(const char *) const { return 0; }
virtual void ReadImage(const char * , EImageFileTypes = TImage::kUnknown) {}
virtual void WriteImage(const char * , EImageFileTypes = TImage::kUnknown) {}
virtual void SetImage(const Double_t * , UInt_t , UInt_t , TImagePalette * = 0) {}
virtual void SetImage(const TArrayD & , UInt_t , TImagePalette * = 0) {}
virtual void SetImage(const TVectorD & , UInt_t , TImagePalette * = 0) {}
virtual void SetImage(Pixmap_t , Pixmap_t = 0) {}
virtual void FromPad(TVirtualPad * , Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) {}
virtual void UnZoom() {}
virtual void Zoom(UInt_t , UInt_t , UInt_t , UInt_t ) {}
virtual void Flip(Int_t = 180) {}
virtual void Gray(Bool_t = kTRUE) {}
virtual Bool_t IsGray() const { return kFALSE; }
virtual void Mirror(Bool_t = kTRUE) {}
virtual void Scale(UInt_t , UInt_t ) {}
virtual void Slice(UInt_t , UInt_t , UInt_t , UInt_t ,
UInt_t , UInt_t ) {}
virtual void Tile(UInt_t , UInt_t ) {}
virtual void Crop(Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) {}
virtual void Pad(const char * = "#FFFFFFFF", UInt_t = 0,
UInt_t = 0, UInt_t = 0, UInt_t = 0) {}
virtual void Blur(Double_t = 3, Double_t = 3) { }
virtual Double_t *Vectorize(UInt_t = 256, UInt_t = 4, Int_t = 0) { return 0; }
virtual void HSV(UInt_t = 0, UInt_t = 360, Int_t = 0, Int_t = 0, Int_t = 0,
Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) {}
virtual void Gradient(UInt_t = 0, const char * = "#FFFFFF #000000", const char * = 0,
Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) {}
virtual void Merge(const TImage * , const char * = "alphablend", Int_t = 0, Int_t = 0) {}
virtual void Append(const TImage * , const char * = "+", const char * = "#00000000") {}
virtual void Bevel(Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0,
const char * = "#ffdddddd", const char * = "#ff555555",
UShort_t = 1, Bool_t = kFALSE) {}
virtual void DrawText(Int_t = 0, Int_t = 0, const char * = "", Int_t = 12,
const char * = 0, const char * = "fixed",
EText3DType = TImage::kPlain, const char * = 0, Float_t = 0) { }
virtual void BeginPaint(Bool_t = kTRUE) {}
virtual void EndPaint() {}
virtual void DrawLine(UInt_t , UInt_t , UInt_t , UInt_t ,
const char * = "#000000", UInt_t = 1) {}
virtual void DrawDashLine(UInt_t , UInt_t , UInt_t , UInt_t , UInt_t ,
const char * , const char * = "#000000", UInt_t = 1) {}
virtual void DrawBox(Int_t , Int_t , Int_t , Int_t ,
const char * = "#000000", UInt_t = 1, Int_t = 0) {}
virtual void DrawRectangle(UInt_t , UInt_t , UInt_t , UInt_t ,
const char * = "#000000", UInt_t = 1) {}
virtual void FillRectangle(const char * = 0, Int_t = 0, Int_t = 0,
UInt_t = 0, UInt_t = 0) {}
virtual void DrawPolyLine(UInt_t , TPoint * , const char * = "#000000",
UInt_t = 1, TImage::ECoordMode = kCoordModeOrigin) {}
virtual void PutPixel(Int_t , Int_t , const char * = "#000000") {}
virtual void PolyPoint(UInt_t , TPoint * , const char * = "#000000",
TImage::ECoordMode = kCoordModeOrigin) {}
virtual void DrawSegments(UInt_t , Segment_t * , const char * = "#000000", UInt_t = 1) {}
virtual void FillPolygon(UInt_t , TPoint * , const char * = "#000000",
const char * = 0, UInt_t = 16, UInt_t = 16) {}
virtual void FillPolygon(UInt_t , TPoint * , TImage * ) {}
virtual void CropPolygon(UInt_t , TPoint * ) {}
virtual void DrawFillArea(UInt_t , TPoint * , const char * = "#000000",
const char * = 0, UInt_t = 16, UInt_t = 16) {}
virtual void DrawFillArea(UInt_t , TPoint * , TImage * ) {}
virtual void FillSpans(UInt_t , TPoint * , UInt_t * , const char * = "#000000",
const char * = 0, UInt_t = 16, UInt_t = 16) {}
virtual void FillSpans(UInt_t , TPoint * , UInt_t * , TImage * ) {}
virtual void CropSpans(UInt_t , TPoint * , UInt_t * ) {}
virtual void CopyArea(TImage * , Int_t , Int_t , UInt_t , UInt_t ,
Int_t = 0, Int_t = 0, Int_t = 3, EColorChan = kAllChan) {}
virtual void DrawCellArray(Int_t , Int_t , Int_t , Int_t , Int_t , Int_t , UInt_t * ) {}
virtual void FloodFill(Int_t , Int_t , const char * , const char * , const char * = 0) {}
virtual void DrawCubeBezier(Int_t , Int_t , Int_t , Int_t , Int_t , Int_t , const char * = "#000000", UInt_t = 1) {}
virtual void DrawStraightEllips(Int_t , Int_t , Int_t , Int_t , const char * = "#000000", Int_t = 1) {}
virtual void DrawCircle(Int_t , Int_t , Int_t , const char * = "#000000", Int_t = 1) {}
virtual void DrawEllips(Int_t , Int_t , Int_t , Int_t , Int_t , const char * = "#000000", Int_t = 1) {}
virtual void DrawEllips2(Int_t , Int_t , Int_t , Int_t , Int_t , const char * = "#000000", Int_t = 1) {}
virtual void SetEditable(Bool_t = kTRUE) {}
virtual Bool_t IsEditable() const { return kFALSE; }
virtual UInt_t GetWidth() const { return 0; }
virtual UInt_t GetHeight() const { return 0; }
virtual Bool_t IsValid() const { return kTRUE; }
virtual TImage *GetScaledImage() const { return 0; }
virtual TArrayL *GetPixels(Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) { return 0; }
virtual TArrayD *GetArray(UInt_t = 0, UInt_t = 0, TImagePalette * = gWebImagePalette) { return 0; }
virtual Pixmap_t GetPixmap() { return 0; }
virtual Pixmap_t GetMask() { return 0; }
virtual UInt_t *GetArgbArray() { return 0; }
virtual UInt_t *GetRgbaArray() { return 0; }
virtual UInt_t *GetScanline(UInt_t ) { return 0; }
virtual void GetImageBuffer(char ** , int* , EImageFileTypes = TImage::kPng) {}
virtual Bool_t SetImageBuffer(char ** , EImageFileTypes = TImage::kPng) { return kFALSE; }
virtual void PaintImage(Drawable_t , Int_t , Int_t ) { }
virtual void FromWindow(Drawable_t , Int_t = 0, Int_t = 0, UInt_t = 0, UInt_t = 0) {}
static TImage *Create();
static TImage *Open(const char *file, EImageFileTypes type = kUnknown);
static TImage *Open(char **data);
static TImage *Open(const char *name, const Double_t *imageData, UInt_t width, UInt_t height, TImagePalette *palette);
static TImage *Open(const char *name, const TArrayD &imageData, UInt_t width, TImagePalette *palette = 0);
static TImage *Open(const char *name, const TVectorD &imageData, UInt_t width, TImagePalette *palette = 0);
TImage &operator+=(const TImage &i) { Append(&i, "+"); return *this; }
TImage &operator/=(const TImage &i) { Append(&i, "/"); return *this; }
ClassDef(TImage,1)
};
#endif
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.