00001 /***************************************************************************** 00002 * Project: RooFit * 00003 * Package: RooFitCore * 00004 * File: $Id: RooInt.h,v 1.6 2007/05/11 09:11:30 verkerke Exp $ 00005 * Authors: * 00006 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * 00007 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu * 00008 * * 00009 * Copyright (c) 2000-2005, Regents of the University of California * 00010 * and Stanford University. All rights reserved. * 00011 * * 00012 * Redistribution and use in source and binary forms, * 00013 * with or without modification, are permitted according to the terms * 00014 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) * 00015 *****************************************************************************/ 00016 #ifndef ROO_INT 00017 #define ROO_INT 00018 00019 #include "Rtypes.h" 00020 #include "TNamed.h" 00021 00022 class RooInt : public TNamed { 00023 public: 00024 00025 RooInt() : _value(0) {} ; 00026 RooInt(Int_t value) : TNamed(), _value(value) {} ; 00027 RooInt(const RooInt& other) : TNamed(other), _value(other._value) {} 00028 virtual ~RooInt() {} ; 00029 00030 // Double_t cast operator 00031 inline operator Int_t() const { return _value ; } 00032 RooInt& operator=(Int_t value) { _value = value ; return *this ; } 00033 00034 // Sorting interface ; 00035 Int_t Compare(const TObject* other) const ; 00036 virtual Bool_t IsSortable() const { return kTRUE ; } 00037 00038 protected: 00039 00040 Int_t _value ; // Payload 00041 ClassDef(RooInt,1) // Container class for Int_t 00042 }; 00043 00044 #endif