IncludeFiles
Finding Include Files
C++ Code
In the Mu2e repositories, you will see include directives that take one of the following forms,
#include "Offline/RecoDataProducts/inc/KalSeed.hh" #include "art/Framework/Principal/Event.h" #include "TH1F.h" #include <iostream>
The remainder of this page will discuss how to find the source code for header files included in the Mu2e code.
Files Included from ROOT
The syntax to incluude a root header file is to specify a path relative to $ROOT_INC. Because of the way that the root repository is structured, this results in most include directives containing only the filename. In almost all cases, the filename starts with a capital letter T, for example
#include "TH1F.h"
There are a small number of exceptional cases in which the filename starts with a capital letter R. Two cases that occur in the Mu2e code base are:
#include "Rtypes.h" #include "Riostream.h"
Finally, some header files live in subdirectories under $ROOT_INC. The two subdirectories that occur in the Mu2e code base are Math and TVMA, for example
#include "Math/Vector3D.h" #include "TMVA/Factory.h"
Exceptions
One other exception was found in a recent scan of Offline. The file included with,
#include "dtcInterfaceLib/DTC_Packets.h"
is found in the repository mu2e_pcie_utils, which can be found in the above table.
FCL Files
Auxillary Files
SimpleConfig, BField maps ...