ROOT logo
// @(#)root/base:$Id: TParameter.h 20877 2007-11-19 11:17:07Z rdm $
// Author: Maarten Ballintijn   21/06/2004

/*************************************************************************
 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TParameter
#define ROOT_TParameter


//////////////////////////////////////////////////////////////////////////
//                                                                      //
// TParameter<AParamType>                                               //
//                                                                      //
// Named parameter, streamable and storable.                            //
//                                                                      //
//////////////////////////////////////////////////////////////////////////


#ifndef ROOT_TObject
#include "TObject.h"
#endif

#ifndef ROOT_TString
#include "TString.h"
#endif


template <class AParamType>
class TParameter : public TObject {

private:
   TString     fName;
   AParamType  fVal;

public:
   TParameter() { /* leave fVal uninitialized */ }
   TParameter(const char *name, const AParamType &val)
             : fName(name), fVal(val) { }
   ~TParameter() { }

   const char       *GetName() const { return fName; }
   const AParamType &GetVal() const { return fVal; }
   void              SetVal(const AParamType &val) { fVal = val; }

   ClassDef(TParameter,1)  //Named templated parameter type
};

#endif
 TParameter.h:1
 TParameter.h:2
 TParameter.h:3
 TParameter.h:4
 TParameter.h:5
 TParameter.h:6
 TParameter.h:7
 TParameter.h:8
 TParameter.h:9
 TParameter.h:10
 TParameter.h:11
 TParameter.h:12
 TParameter.h:13
 TParameter.h:14
 TParameter.h:15
 TParameter.h:16
 TParameter.h:17
 TParameter.h:18
 TParameter.h:19
 TParameter.h:20
 TParameter.h:21
 TParameter.h:22
 TParameter.h:23
 TParameter.h:24
 TParameter.h:25
 TParameter.h:26
 TParameter.h:27
 TParameter.h:28
 TParameter.h:29
 TParameter.h:30
 TParameter.h:31
 TParameter.h:32
 TParameter.h:33
 TParameter.h:34
 TParameter.h:35
 TParameter.h:36
 TParameter.h:37
 TParameter.h:38
 TParameter.h:39
 TParameter.h:40
 TParameter.h:41
 TParameter.h:42
 TParameter.h:43
 TParameter.h:44
 TParameter.h:45
 TParameter.h:46
 TParameter.h:47
 TParameter.h:48
 TParameter.h:49
 TParameter.h:50
 TParameter.h:51
 TParameter.h:52
 TParameter.h:53
 TParameter.h:54