Use unique_ptr based SetSink Around (1/2)#1200
Merged
karabowi merged 1 commit intoFairRootGroup:devfrom Jul 11, 2022
Merged
Conversation
Member
|
Thought I'd run iwyu, but it is spamming a lot more ... ❯ iwyu_tool.py -p build base/steer/FairAnaSelector.cxx base/sim/FairMCApplication.cxx
/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.h should add these lines:
#include <RtypesCore.h> // for Int_t, Bool_t, Long64_t
class TBuffer;
class TClass;
class TMemberInspector;
/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.h should remove these lines:
- #include "FairLogger.h" // lines 17-17
The full include-list for /home/dklein/projects/FairRoot/base/steer/FairAnaSelector.h:
#include <Rtypes.h> // for ClassDefOverride
#include <RtypesCore.h> // for Int_t, Bool_t, Long64_t
#include <TSelector.h> // for TSelector
#include <TSelectorList.h> // for TSelectorList
#include <TString.h> // for TString
#include <TTree.h> // for TTree
class FairFileSource; // lines 25-25
class FairRunAnaProof; // lines 26-26
class TBuffer;
class TClass;
class TFile; // lines 28-28
class TList; // lines 29-29
class TMemberInspector;
class TObject; // lines 30-30
class TProofOutputFile; // lines 31-31
---
/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.cxx should add these lines:
#include <fairlogger/Logger.h> // for Logger, LOG
#include <memory> // for allocator, make_unique
#include "FairSink.h" // for FairSink
/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.cxx should remove these lines:
- #include "FairLogger.h" // lines 17-17
The full include-list for /home/dklein/projects/FairRoot/base/steer/FairAnaSelector.cxx:
#include "FairAnaSelector.h"
#include <TFile.h> // for TFile
#include <TList.h> // for TList
#include <TNamed.h> // for TNamed
#include <TObject.h> // for TObject
#include <TProofOutputFile.h> // for TProofOutputFile
#include <TProofServ.h> // for TProofServ, gProofServ
#include <TSystem.h> // for TSystem, gSystem
#include <fairlogger/Logger.h> // for Logger, LOG
#include <memory> // for allocator, make_unique
#include "FairFileSource.h" // for FairFileSource
#include "FairParAsciiFileIo.h" // for FairParAsciiFileIo
#include "FairParRootFileIo.h" // for FairParRootFileIo
#include "FairRootFileSink.h" // for FairRootFileSink
#include "FairRootManager.h" // for FairRootManager
#include "FairRunAnaProof.h" // for FairRunAnaProof
#include "FairRuntimeDb.h" // for FairRuntimeDb
#include "FairSink.h" // for FairSink
#include "FairTask.h" // for FairTask
---
In file included from /home/dklein/projects/FairRoot/base/sim/FairMCApplication.cxx:16:
/home/dklein/projects/FairRoot/base/sim/FairGenericStack.h:62:18: warning: 'FairGenericStack::PushTrack' hides overloaded virtual function [-Woverloaded-virtual]
virtual void PushTrack(Int_t toBeDone,
^
/home/dklein/fairsoft/apr22/include/vmc/TVirtualMCStack.h:59:17: note: hidden overloaded virtual function 'TVirtualMCStack::PushTrack' declared here: different number of parameters (18 vs 19)
virtual void PushTrack(Int_t toBeDone, Int_t parent, Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t e,
^
/home/dklein/projects/FairRoot/base/steer/FairTrajFilter.h:17:26: warning: Extra tokens on pragma line
/home/dklein/projects/FairRoot/base/sim/FairMCApplication.h should add these lines:
#include <RtypesCore.h> // for Int_t, Bool_t, Double_t
class TBuffer;
class TClass;
class TMemberInspector;
/home/dklein/projects/FairRoot/base/sim/FairMCApplication.h should remove these lines:
The full include-list for /home/dklein/projects/FairRoot/base/sim/FairMCApplication.h:
#include <Rtypes.h> // for ClassDefOverride
#include <RtypesCore.h> // for Int_t, Bool_t, Double_t
#include <TLorentzVector.h> // for TLorentzVector
#include <TString.h> // for TString
#include <TVirtualMCApplication.h> // for TVirtualMCApplication
#include <list> // for list
#include <map> // for map, multimap, map<>::iterator
#include <memory> // for unique_ptr
#include "FairRadGridManager.h" // for FairRadGridManager
#include "FairRunInfo.h" // for FairRunInfo
class FairDetector; // lines 27-27
class FairEventHeader; // lines 28-28
class FairField; // lines 29-29
class FairGenericStack; // lines 30-30
class FairMCEventHeader; // lines 31-31
class FairPrimaryGenerator; // lines 32-32
class FairRadLenManager; // lines 33-33
class FairRadMapManager; // lines 34-34
class FairRootManager; // lines 35-35
class FairRunSim; // lines 39-39
class FairTask; // lines 36-36
class FairTrajFilter; // lines 37-37
class FairVolume; // lines 38-38
class TBuffer;
class TChain; // lines 40-40
class TClass;
class TIterator; // lines 41-41
class TMemberInspector;
class TObjArray; // lines 42-42
class TRefArray; // lines 43-43
class TTask; // lines 44-44
class TVirtualMC; // lines 45-45
---
/home/dklein/projects/FairRoot/base/sim/FairMCApplication.cxx should add these lines:
#include <TGeoMatrix.h> // for TGeoHMatrix
#include <fairlogger/Logger.h> // for Logger, LOG
#include "FairSink.h" // for FairSink, kONLINESINK
/home/dklein/projects/FairRoot/base/sim/FairMCApplication.cxx should remove these lines:
- #include "FairLogger.h" // lines 22-22
- #include "FairRootFileSink.h" // lines 31-31
The full include-list for /home/dklein/projects/FairRoot/base/sim/FairMCApplication.cxx:
#include "FairMCApplication.h"
#include <TDatabasePDG.h> // for TDatabasePDG
#include <TFile.h> // for TFile
#include <TGeoManager.h> // for gGeoManager, TGeoManager
#include <TGeoMatrix.h> // for TGeoHMatrix
#include <TGeoMedium.h> // for TGeoMedium
#include <TGeoNode.h> // for TGeoNode
#include <TGeoPhysicalNode.h> // for TGeoPhysicalNode
#include <TGeoTrack.h> // for TGeoTrack
#include <TGeoVolume.h> // for TGeoVolume
#include <TH2.h> // for TH2D
#include <THashList.h> // for THashList
#include <TInterpreter.h> // for TInterpreter, gInterpreter
#include <TIterator.h> // for TIterator
#include <TList.h> // for TList, TListIter
#include <TObjArray.h> // for TObjArray
#include <TObject.h> // for TObject
#include <TParticlePDG.h> // for TParticlePDG
#include <TROOT.h> // for TROOT, gROOT
#include <TRefArray.h> // for TRefArray
#include <TSystem.h> // for TSystem, gSystem
#include <TVirtualMC.h> // for TVirtualMC, gMC
#include <TVirtualMCStack.h> // for TVirtualMCStack
#include <fairlogger/Logger.h> // for Logger, LOG
#include <float.h> // for DBL_MAX
#include <stdlib.h> // for getenv, exit
#include <mutex> // for mutex
#include <utility> // for pair
#include "FairDetector.h" // for FairDetector
#include "FairField.h" // for FairField
#include "FairGenericStack.h" // for FairGenericStack
#include "FairGeoInterface.h" // for FairGeoInterface
#include "FairGeoLoader.h" // for FairGeoLoader
#include "FairGeoMedia.h" // for FairGeoMedia
#include "FairGeoMedium.h" // for FairGeoMedium
#include "FairIon.h" // for FairIon
#include "FairMCEventHeader.h" // for FairMCEventHeader
#include "FairMesh.h" // for FairMesh
#include "FairModule.h" // for FairModule, FairModule::svList
#include "FairParticle.h" // for FairParticle
#include "FairPrimaryGenerator.h" // for FairPrimaryGenerator
#include "FairRadGridManager.h" // for FairRadGridManager
#include "FairRadLenManager.h" // for FairRadLenManager
#include "FairRadMapManager.h" // for FairRadMapManager
#include "FairRootManager.h" // for FairRootManager
#include "FairRun.h" // for FairRun
#include "FairRunInfo.h" // for FairRunInfo
#include "FairRunSim.h" // for FairRunSim
#include "FairRuntimeDb.h" // for FairRuntimeDb
#include "FairSink.h" // for FairSink, kONLINESINK
#include "FairTask.h" // for FairTask
#include "FairTrajFilter.h" // for FairTrajFilter
#include "FairVolume.h" // for FairVolume
class TParticle; // lines 62-62
---or as a diff: ❯ iwyu_tool.py -p build base/steer/FairAnaSelector.cxx base/sim/FairMCApplication.cxx | fix_includes.py
>>> Fixing #includes in '/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.h'
>>> Fixing #includes in '/home/dklein/projects/FairRoot/base/steer/FairAnaSelector.cxx'
>>> Fixing #includes in '/home/dklein/projects/FairRoot/base/sim/FairMCApplication.h'
>>> Fixing #includes in '/home/dklein/projects/FairRoot/base/sim/FairMCApplication.cxx'
IWYU edited 4 files on your behalf.
❯ git diffdiff --git a/base/sim/FairMCApplication.cxx b/base/sim/FairMCApplication.cxx
index a36b5dc0c..ab20727d7 100644
--- a/base/sim/FairMCApplication.cxx
+++ b/base/sim/FairMCApplication.cxx
@@ -11,6 +11,34 @@
// -------------------------------------------------------------------------
#include "FairMCApplication.h"
+#include <TDatabasePDG.h> // for TDatabasePDG
+#include <TFile.h> // for TFile
+#include <TGeoManager.h> // for gGeoManager, TGeoManager
+#include <TGeoMedium.h> // for TGeoMedium
+#include <TGeoNode.h> // for TGeoNode
+#include <TGeoPhysicalNode.h> // for TGeoPhysicalNode
+#include <TGeoTrack.h> // for TGeoTrack
+#include <TGeoVolume.h> // for TGeoVolume
+#include <TH2.h> // for TH2D
+#include <THashList.h> // for THashList
+#include <TInterpreter.h> // for TInterpreter, gInterpreter
+#include <TIterator.h> // for TIterator
+#include <TList.h> // for TList, TListIter
+#include <TObjArray.h> // for TObjArray
+#include <TObject.h> // for TObject
+#include <TParticlePDG.h> // for TParticlePDG
+#include <TROOT.h> // for TROOT, gROOT
+#include <TRefArray.h> // for TRefArray
+#include <TSystem.h> // for TSystem, gSystem
+#include <TVirtualMC.h> // for TVirtualMC
+#include <TVirtualMCStack.h> // for TVirtualMCStack
+#include <float.h> // for DBL_MAX
+#include <stdlib.h> // for getenv, exit
+#include <TGeoMatrix.h>
+#include <fairlogger/Logger.h>
+#include <mutex> // std::mutex
+#include <utility> // for pair
+
#include "FairDetector.h" // for FairDetector
#include "FairField.h" // for FairField
#include "FairGenericStack.h" // for FairGenericStack
@@ -19,7 +47,6 @@
#include "FairGeoMedia.h" // for FairGeoMedia
#include "FairGeoMedium.h" // for FairGeoMedium
#include "FairIon.h" // for FairIon
-#include "FairLogger.h" // for FairLogger, MESSAGE_ORIGIN
#include "FairMCEventHeader.h" // for FairMCEventHeader
#include "FairMesh.h" // for FairMesh
#include "FairModule.h" // for FairModule, etc
@@ -28,7 +55,6 @@
#include "FairRadGridManager.h" // for FairRadGridManager
#include "FairRadLenManager.h" // for FairRadLenManager
#include "FairRadMapManager.h" // for FairRadMapManager
-#include "FairRootFileSink.h" // for CloneForWorker (in MT mode only)
#include "FairRootManager.h" // for FairRootManager
#include "FairRun.h" // for FairRun
#include "FairRunInfo.h" // for FairRunInfo
@@ -37,34 +63,10 @@
#include "FairTask.h" // for FairTask
#include "FairTrajFilter.h" // for FairTrajFilter
#include "FairVolume.h" // for FairVolume
+#include "FairSink.h"
-#include <TDatabasePDG.h> // for TDatabasePDG
-#include <TFile.h> // for TFile
-#include <TGeoManager.h> // for gGeoManager, TGeoManager
-#include <TGeoMedium.h> // for TGeoMedium
-#include <TGeoNode.h> // for TGeoNode
-#include <TGeoPhysicalNode.h> // for TGeoPhysicalNode
-#include <TGeoTrack.h> // for TGeoTrack
-#include <TGeoVolume.h> // for TGeoVolume
-#include <TH2.h> // for TH2D
-#include <THashList.h> // for THashList
-#include <TInterpreter.h> // for TInterpreter, gInterpreter
-#include <TIterator.h> // for TIterator
-#include <TList.h> // for TList, TListIter
-#include <TObjArray.h> // for TObjArray
-#include <TObject.h> // for TObject
-#include <TParticlePDG.h> // for TParticlePDG
-#include <TROOT.h> // for TROOT, gROOT
-#include <TRefArray.h> // for TRefArray
-#include <TSystem.h> // for TSystem, gSystem
-#include <TVirtualMC.h> // for TVirtualMC
-#include <TVirtualMCStack.h> // for TVirtualMCStack
class TParticle;
-#include <float.h> // for DBL_MAX
-#include <mutex> // std::mutex
-#include <stdlib.h> // for getenv, exit
-#include <utility> // for pair
std::mutex mtx; // mutex for critical section
using std::pair;
diff --git a/base/sim/FairMCApplication.h b/base/sim/FairMCApplication.h
index b7b47d27f..c0ba35f8e 100644
--- a/base/sim/FairMCApplication.h
+++ b/base/sim/FairMCApplication.h
@@ -13,17 +13,18 @@
#ifndef FAIR_MC_APPLICATION_H
#define FAIR_MC_APPLICATION_H
-#include "FairRadGridManager.h"
-#include "FairRunInfo.h" // for FairRunInfo
-
#include <Rtypes.h> // for Int_t, Bool_t, Double_t, etc
#include <TLorentzVector.h> // for TLorentzVector
#include <TString.h> // for TString
#include <TVirtualMCApplication.h> // for TVirtualMCApplication
+#include <RtypesCore.h>
#include <list> // for list
#include <map> // for map, multimap, etc
#include <memory> // for std::unique_ptr
+#include "FairRadGridManager.h"
+#include "FairRunInfo.h" // for FairRunInfo
+
class FairDetector;
class FairEventHeader;
class FairField;
@@ -43,6 +44,9 @@ class TObjArray;
class TRefArray;
class TTask;
class TVirtualMC;
+class TBuffer;
+class TClass;
+class TMemberInspector;
enum class FairMCApplicationState
{
diff --git a/base/steer/FairAnaSelector.cxx b/base/steer/FairAnaSelector.cxx
index cdde1161c..3520dcd85 100644
--- a/base/steer/FairAnaSelector.cxx
+++ b/base/steer/FairAnaSelector.cxx
@@ -13,8 +13,17 @@
#include "FairAnaSelector.h"
+#include <TFile.h> // for TFile
+#include <TList.h> // for TList
+#include <TNamed.h> // for TNamed
+#include <TObject.h> // for TObject
+#include <TProofOutputFile.h> // for TProofOutputFile
+#include <TProofServ.h> // for TProofServ
+#include <TSystem.h> // for TSystem, gSystem
+#include <fairlogger/Logger.h>
+#include <memory>
+
#include "FairFileSource.h" // for FairFileSource
-#include "FairLogger.h" // for FairLogger, MESSAGE_ORIGIN
#include "FairParAsciiFileIo.h" // for FairParAsciiFileIo
#include "FairParRootFileIo.h" // for FairParRootFileIo
#include "FairRootFileSink.h" // for FairRootFileSink
@@ -22,14 +31,7 @@
#include "FairRunAnaProof.h" // for FairRunAnaProof
#include "FairRuntimeDb.h" // for FairRuntimeDb
#include "FairTask.h" // for FairTask
-
-#include <TFile.h> // for TFile
-#include <TList.h> // for TList
-#include <TNamed.h> // for TNamed
-#include <TObject.h> // for TObject
-#include <TProofOutputFile.h> // for TProofOutputFile
-#include <TProofServ.h> // for TProofServ
-#include <TSystem.h> // for TSystem, gSystem
+#include "FairSink.h"
void FairAnaSelector::Init(TTree* tree)
{
diff --git a/base/steer/FairAnaSelector.h b/base/steer/FairAnaSelector.h
index 044cafbd8..3ec98716c 100644
--- a/base/steer/FairAnaSelector.h
+++ b/base/steer/FairAnaSelector.h
@@ -14,21 +14,24 @@
#ifndef FAIRANASELECTOR_H
#define FAIRANASELECTOR_H
-#include "FairLogger.h" // for FairLogger, MESSAGE_ORIGIN
-
#include <Rtypes.h> // for Int_t, Bool_t, etc
#include <TSelector.h> // for TSelector
#include <TSelectorList.h> // for TSelectorList
#include <TString.h> // for TString
#include <TTree.h> // for TTree
+#include <RtypesCore.h>
+
+#include "FairLogger.h" // for FairLogger, MESSAGE_ORIGIN
class FairFileSource;
class FairRunAnaProof;
-
class TFile;
class TList;
class TObject;
class TProofOutputFile;
+class TBuffer;
+class TClass;
+class TMemberInspector;
class FairAnaSelector : public TSelector
{
|
Member
Author
|
CMake has iwyu integration. I even have a local patch to fix the current iwyu setup with the new CMake based one. But really, it's spamming a lot. I don't know, if this helps us really… |
Now that FairRun::SetSink supports unique_ptr, use it around to promote good style.
3c87416 to
8d074fd
Compare
karabowi
approved these changes
Jul 11, 2022
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Now that FairRun::SetSink supports unique_ptr, use it around to promote good style.
Checklist:
devbranch