![]() |
|
|||
File indexing completed on 2025-07-01 08:51:47
0001 /***************************************************************************** 0002 * Project: RooFit * 0003 * Package: RooFitCore * 0004 * File: $Id: RooAbsProxy.h,v 1.15 2007/07/12 20:30:28 wouter Exp $ 0005 * Authors: * 0006 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * 0007 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu * 0008 * * 0009 * Copyright (c) 2000-2005, Regents of the University of California * 0010 * and Stanford University. All rights reserved. * 0011 * * 0012 * Redistribution and use in source and binary forms, * 0013 * with or without modification, are permitted according to the terms * 0014 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) * 0015 *****************************************************************************/ 0016 #ifndef ROO_ABS_PROXY 0017 #define ROO_ABS_PROXY 0018 0019 #ifdef _WIN32 0020 // Turn off 'warning C4355: 'this' : used in base member initializer list' 0021 // 0022 // This message will pop up for any class that initializes member proxy objects 0023 // Including the pragma here will automatically disable that warning message 0024 // for all such cases 0025 #pragma warning ( disable:4355 ) 0026 #endif 0027 0028 #include <TClass.h> 0029 0030 #include <string> 0031 #include <unordered_map> 0032 0033 class RooAbsArg; 0034 class RooAbsCollection; 0035 class RooArgSet; 0036 0037 class RooAbsProxy { 0038 public: 0039 0040 // Constructors, assignment etc. 0041 RooAbsProxy() ; 0042 RooAbsProxy(const char* name, const RooAbsProxy& other) ; 0043 virtual ~RooAbsProxy() { 0044 // Destructor 0045 } ; 0046 0047 virtual const char* name() const { 0048 // Return name of proxy 0049 return "dummy" ; 0050 } ; 0051 0052 inline const RooArgSet* nset() const { 0053 // Return normalization set to be used for evaluation of contents 0054 return _nset ; 0055 } 0056 virtual void print(std::ostream& os, bool addContents=false) const ; 0057 0058 protected: 0059 0060 RooArgSet* _nset = nullptr ; ///<! Normalization set to be used for evaluation of RooAbsPdf contents 0061 0062 friend class RooAbsArg ; 0063 virtual bool changePointer(const RooAbsCollection& newServerSet, bool nameChange=false, bool factoryInitMode=false) = 0 ; 0064 virtual bool changePointer(std::unordered_map<RooAbsArg*, RooAbsArg*> const& replacements) = 0 ; 0065 0066 friend class RooAbsPdf ; 0067 virtual void changeNormSet(const RooArgSet* newNormSet) ; 0068 0069 ClassDef(RooAbsProxy,1) // Abstract proxy interface 0070 } ; 0071 0072 #endif 0073
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |