Anp::PlotTrackGeom Class Reference

#include <PlotTrackGeom.h>

Inheritance diagram for Anp::PlotTrackGeom:
Anp::AlgEvent Anp::AlgSnarl Anp::Base Anp::Base

List of all members.

Public Member Functions

 PlotTrackGeom ()
virtual ~PlotTrackGeom ()
bool Run (Record &record)
bool Run (Event &event, const Record &record, bool pass)
void Set (TDirectory *dir)
void Config (const Registry &reg)
void Fill (const Track &track)

Private Member Functions

void FillRotation (const Track &track)
void FillProjection (const Track &track)
void FillXProduct (const Track &track)

Private Attributes

TDirectory * fDir
bool fPlot
bool fPlotTH2
std::string fDirName
TH1 * f1hVtxDirEndPointXZAngle
TH1 * f1hVtxEndRadialCosDiff
TH1 * f1hVtxEndRadialCosDiffRot
TH1 * f1hVtxEndXYAngle
TH1 * f1hVtxTransverseDir
TH1 * f1hVtxEndVecDiffX
TH1 * f1hVtxEndVecDiffY
TH1 * f1hVtxEndVecDiffZ
TH1 * f1hVtxEndVecCos
TH1 * f1hVtxEndVecXProductX
TH1 * f1hVtxEndVecXProductY
TH1 * f1hVtxEndVecXProductZ
TH1 * f1hVtxEndVecXProductR
TH1 * f1hProjEndDiffXYAngle
TH1 * f1hProjEndDiffX
TH1 * f1hProjEndDiffY
TH1 * f1hProjEndDiffR
TH1 * f1hProjEndDiffXOverR
TH1 * f1hProjEndDiffXOverZ
TH1 * f1hProjEndDiffXOverY
TH1 * f1hProjEndDiffROverZ
TH1 * f1hEndRMinusProjR
TH1 * f1hVtEndVtxProjDiffAngle
TH2 * f2hProjEndDiffRVsNPlane
TH2 * f2hQPOverEQPVsProjEndDiffXYAngle
TH2 * f2hEndXY
TH2 * f2hProjEndDiffXY
TH2 * f2hProjEndDiffXYWide

Detailed Description

Definition at line 19 of file PlotTrackGeom.h.


Constructor & Destructor Documentation

Anp::PlotTrackGeom::PlotTrackGeom (  ) 

Definition at line 31 of file PlotTrackGeom.cxx.

00032    :fDir(0),
00033     fPlot(true),
00034     fPlotTH2(false),
00035     fDirName("geometry")
00036 {
00037 }

Anp::PlotTrackGeom::~PlotTrackGeom (  )  [virtual]

Definition at line 40 of file PlotTrackGeom.cxx.

00041 {
00042 }


Member Function Documentation

void Anp::PlotTrackGeom::Config ( const Registry reg  )  [virtual]

Reimplemented from Anp::AlgEvent.

Definition at line 108 of file PlotTrackGeom.cxx.

References fDirName, fPlotTH2, Registry::Get(), Registry::KeyExists(), and Anp::Read().

00109 {
00110    //
00111    // Configure self
00112    //
00113 
00114    Anp::Read(reg, "PlotTH2", fPlotTH2);
00115 
00116    const char *name = 0;
00117    if(reg.Get("PlotTrackGeomDirName",name))
00118    {
00119       fDirName = name;
00120    }
00121    else
00122    {
00123       fDirName = "track_geometry";
00124    }
00125 
00126    if(reg.KeyExists("PrintConfig"))
00127    {
00128       cout << "PlotTrackGeom::Config" << endl
00129            << "   PlotTH2 = " << fPlotTH2 << endl
00130            << "   DirName = " << fDirName << endl;
00131    }
00132 }

void Anp::PlotTrackGeom::Fill ( const Track track  ) 

Definition at line 77 of file PlotTrackGeom.cxx.

References Anp::Vertex::CosX(), Anp::Vertex::CosY(), Anp::Vertex::CosZ(), f1hVtxTransverseDir, f2hEndXY, fDir, FillProjection(), FillRotation(), FillXProduct(), fPlot, fPlotTH2, Anp::Track::GetBegVtx(), Anp::Track::GetEndVtx(), Anp::Vertex::X(), and Anp::Vertex::Y().

Referenced by FillProjection(), FillRotation(), FillXProduct(), and Run().

00078 {  
00079    if(!fDir || !fPlot)
00080    {
00081       return;
00082    }
00083 
00084    //--------------------------------------------------------------------
00085    // fill transverse direction at vertex, along beam line
00086    //---------------------------------------------------------------------
00087    const double beam_vtx_dcosy = track.GetBegVtx().CosZ()*std::sin(0.058) + 
00088       track.GetBegVtx().CosY()*std::cos(0.058);   
00089    
00090    const double dir_trans = std::sqrt(beam_vtx_dcosy*beam_vtx_dcosy + 
00091                                       track.GetBegVtx().CosX()*track.GetBegVtx().CosX());
00092 
00093    f1hVtxTransverseDir -> Fill(dir_trans);
00094 
00095    if(fPlotTH2)
00096    {
00097       f2hEndXY -> Fill(track.GetEndVtx().X(), track.GetEndVtx().Y());
00098    }
00099 
00100    FillXProduct(track);
00101 
00102    FillRotation(track);
00103 
00104    FillProjection(track);
00105 }

void Anp::PlotTrackGeom::FillProjection ( const Track track  )  [private]

Definition at line 256 of file PlotTrackGeom.cxx.

References Anp::angle(), Anp::Vertex::CosX(), Anp::Vertex::CosY(), Anp::Vertex::CosZ(), Anp::Track::ErrorQP(), f1hEndRMinusProjR, f1hProjEndDiffR, f1hProjEndDiffROverZ, f1hProjEndDiffX, f1hProjEndDiffXOverR, f1hProjEndDiffXOverY, f1hProjEndDiffXOverZ, f1hProjEndDiffXYAngle, f1hProjEndDiffY, f1hVtEndVtxProjDiffAngle, f2hProjEndDiffRVsNPlane, f2hProjEndDiffXY, f2hProjEndDiffXYWide, f2hQPOverEQPVsProjEndDiffXYAngle, Fill(), fPlotTH2, Anp::Track::GetBasic(), Anp::Track::GetBegVtx(), Anp::Track::GetEndVtx(), Anp::Basic::NPlane(), Anp::Track::PassFit(), Anp::Track::QP(), Anp::Vertex::X(), Anp::Vertex::Y(), and Anp::Vertex::Z().

Referenced by Fill().

00257 {
00259    // determine angle for coordinate rotation
00261    const double x_vtx = track.GetBegVtx().X();
00262    const double y_vtx = track.GetBegVtx().Y();
00263 
00264    const double xy_angle_vtx = Anp::angle(x_vtx, y_vtx);
00265 
00266    const double x_end = track.GetEndVtx().X();
00267    const double y_end = track.GetEndVtx().Y();
00268    //const double z_end = track.GetEndVtx().Z();
00269 
00271    // transform x,y coordinates into the new coordinates at vertex
00273    const double rot_x_end =  x_end*std::cos(xy_angle_vtx) + y_end*std::sin(xy_angle_vtx);
00274    const double rot_y_end = -x_end*std::sin(xy_angle_vtx) + y_end*std::cos(xy_angle_vtx);
00275 
00276    //const double x_rel = rot_x_end - rot_x_vtx;
00277    //const double y_rel = rot_y_end - rot_y_vtx;
00278    const double z_rel = track.GetEndVtx().Z() - track.GetBegVtx().Z();   
00279 
00280    //-------------------------------------------------------------------
00281    // difference between hit and projected straight line from vtx
00282    //-------------------------------------------------------------------
00283    if(!(track.GetBegVtx().CosZ() > 0.0)) return;
00284 
00285    const double t_end = z_rel/track.GetBegVtx().CosZ();
00286    
00287    const double x_proj = track.GetBegVtx().CosX() * t_end + x_vtx;
00288    const double y_proj = track.GetBegVtx().CosY() * t_end + y_vtx;
00289    
00290    //x_vtx*std::cos(xy_angle_vtx) + y_vtx*std::sin(xy_angle_vtx);
00291    
00292    const double x_proj_rot =  x_proj*std::cos(xy_angle_vtx) + y_proj*std::sin(xy_angle_vtx);
00293    const double y_proj_rot = -x_proj*std::sin(xy_angle_vtx) + y_proj*std::cos(xy_angle_vtx);
00294    
00295    const double diff_xy_angle = Anp::angle(rot_x_end - x_proj_rot, rot_y_end - y_proj_rot);
00296    f1hProjEndDiffXYAngle -> Fill(diff_xy_angle);
00297    
00298    if(track.PassFit() && track.ErrorQP() > 0.0)
00299    {
00300       if(fPlotTH2) f2hQPOverEQPVsProjEndDiffXYAngle -> Fill(diff_xy_angle, track.QP()/track.ErrorQP());
00301    }
00302    
00303    const double x_proj_rel = rot_x_end - x_proj_rot;
00304    const double y_proj_rel = rot_y_end - y_proj_rot;
00305    const double r_proj_rel = std::sqrt(x_proj_rel*x_proj_rel + y_proj_rel*y_proj_rel);
00306    
00307    if(fPlotTH2)
00308    {
00309       f2hProjEndDiffXY -> Fill(x_proj_rel, y_proj_rel);
00310       f2hProjEndDiffXYWide -> Fill(x_proj_rel, y_proj_rel);
00311       f2hProjEndDiffRVsNPlane -> Fill(track.GetBasic().NPlane(), r_proj_rel);
00312    }
00313 
00314    f1hProjEndDiffX -> Fill(x_proj_rel);
00315    f1hProjEndDiffY -> Fill(y_proj_rel);
00316    f1hProjEndDiffR -> Fill(r_proj_rel);
00317    
00318    if(r_proj_rel > 0.0)
00319    {
00320       f1hProjEndDiffXOverR -> Fill(x_proj_rel/r_proj_rel);
00321    }
00322    if(z_rel > 0.0)
00323    {
00324       f1hProjEndDiffXOverZ -> Fill(x_proj_rot/z_rel);
00325       f1hProjEndDiffROverZ -> Fill(r_proj_rel/z_rel);
00326    }
00327    if(y_proj_rel < 0.0 || y_proj_rel > 0.0)
00328    {
00329       f1hProjEndDiffXOverY -> Fill(x_proj_rot/y_proj_rot); 
00330    }
00331 
00332    const double r_proj = std::sqrt(x_proj*x_proj + y_proj*y_proj);
00333    const double r_end  = std::sqrt(track.GetEndVtx().X()*track.GetEndVtx().X() + 
00334                                    track.GetEndVtx().Y()*track.GetEndVtx().Y());
00335 
00336    f1hEndRMinusProjR -> Fill(r_end - r_proj);
00337 
00338    //-------------------------------------------------------------------
00339    // vtx to projection and vtx to end xy angle difference
00340    //-------------------------------------------------------------------
00341    const double angle_ve = Anp::angle(x_end  - x_vtx, y_end - y_vtx);
00342    const double angle_vp = Anp::angle(x_proj - x_vtx, y_proj - y_vtx);
00343    
00344    f1hVtEndVtxProjDiffAngle -> Fill(angle_vp - angle_ve);
00345 }

void Anp::PlotTrackGeom::FillRotation ( const Track track  )  [private]

Definition at line 187 of file PlotTrackGeom.cxx.

References Anp::angle(), Anp::Vertex::CosX(), Anp::Vertex::CosY(), Anp::Vertex::CosZ(), f1hVtxDirEndPointXZAngle, f1hVtxEndRadialCosDiff, f1hVtxEndRadialCosDiffRot, f1hVtxEndXYAngle, Fill(), Anp::Track::GetBegVtx(), Anp::Track::GetEndVtx(), Anp::Vertex::X(), Anp::Vertex::Y(), and Anp::Vertex::Z().

Referenced by Fill().

00188 {
00190    // determine angle for coordinate rotation
00192    const double x_vtx = track.GetBegVtx().X();
00193    const double y_vtx = track.GetBegVtx().Y();
00194 
00195    const double xy_angle_vtx = Anp::angle(x_vtx, y_vtx);
00196 
00197    const double x_end = track.GetEndVtx().X();
00198    const double y_end = track.GetEndVtx().Y();
00199    //const double z_end = track.end_z;
00200 
00201    const double xy_angle_end = Anp::angle(x_end, y_end);
00202 
00204    // transform x,y coordinates into the new coordinates at vertex
00206    const double rot_x_vtx =  x_vtx*std::cos(xy_angle_vtx) + y_vtx*std::sin(xy_angle_vtx);
00207    const double rot_y_vtx = -x_vtx*std::sin(xy_angle_vtx) + y_vtx*std::cos(xy_angle_vtx);
00208    
00209    const double rot_x_end =  x_end*std::cos(xy_angle_vtx) + y_end*std::sin(xy_angle_vtx);
00210    const double rot_y_end = -x_end*std::sin(xy_angle_vtx) + y_end*std::cos(xy_angle_vtx);
00211 
00212    const double x_rel = rot_x_end - rot_x_vtx;
00213    const double y_rel = rot_y_end - rot_y_vtx;
00214    const double z_rel = track.GetEndVtx().Z() - track.GetBegVtx().Z();   
00215 
00216    const double rot_x_dir_vtx = track.GetBegVtx().CosX()*std::cos(xy_angle_vtx) + 
00217       track.GetBegVtx().CosY()*std::sin(xy_angle_vtx);
00218 
00219    const double rot_x_dir_end = track.GetEndVtx().CosX()*std::cos(xy_angle_vtx) + 
00220       track.GetEndVtx().CosY()*std::sin(xy_angle_vtx);
00221 
00223    // determine trk's directional angle at vertex and end
00224    // in new vertex coordinates
00226 
00227    const double dir_xz_angle_vtx = Anp::angle(rot_x_dir_vtx, track.GetBegVtx().CosZ());
00228 
00229    const double dir_xz_angle_end = Anp::angle(rot_x_dir_end, track.GetEndVtx().CosZ());
00230 
00231    f1hVtxEndRadialCosDiff -> Fill(dir_xz_angle_end - dir_xz_angle_vtx);
00232    
00233    f1hVtxEndXYAngle -> Fill(Anp::angle(x_rel, y_rel));
00234 
00236    // determine trk's directional angle at end
00237    // in new end coordinates
00239 
00240    const double rot_x_dir_end_coord = track.GetEndVtx().CosX()*std::cos(xy_angle_end) + 
00241       track.GetEndVtx().CosY()*std::sin(xy_angle_end);
00242    
00243    const double dir_xz_angle_end_coord = Anp::angle(rot_x_dir_end_coord, track.GetEndVtx().CosZ());
00244 
00245    f1hVtxEndRadialCosDiffRot -> Fill(dir_xz_angle_vtx - dir_xz_angle_end_coord);
00246 
00248    // fill vtx and end XZ angle differences
00250    const double xz_rot_angle = Anp::angle(x_rel, z_rel);
00251    
00252    f1hVtxDirEndPointXZAngle -> Fill(xz_rot_angle - dir_xz_angle_vtx);     
00253 }

void Anp::PlotTrackGeom::FillXProduct ( const Track track  )  [private]

Definition at line 135 of file PlotTrackGeom.cxx.

References Anp::angle(), Anp::Vertex::CosX(), Anp::Vertex::CosY(), Anp::Vertex::CosZ(), f1hVtxEndVecCos, f1hVtxEndVecDiffX, f1hVtxEndVecDiffY, f1hVtxEndVecDiffZ, f1hVtxEndVecXProductR, f1hVtxEndVecXProductX, f1hVtxEndVecXProductY, f1hVtxEndVecXProductZ, Fill(), Anp::Track::GetBegVtx(), Anp::Track::GetEndVtx(), Anp::Vertex::X(), and Anp::Vertex::Y().

Referenced by Fill().

00136 {  
00138    // determine angle for coordinate rotation
00140    const double x_vtx = track.GetBegVtx().X();
00141    const double y_vtx = track.GetBegVtx().Y();
00142    //const double z_vtx = track.GetBegVtx().Z();
00143 
00144    const double xy_angle_vtx = Anp::angle(x_vtx, y_vtx);
00145 
00146    //const double x_end = track.GetEndVtx().X();
00147    //const double y_end = track.GetEndVtx().Y();
00148    //const double Z_end = track.GetEndVtx().Y();
00149 
00150    //const double xy_angle_end = Anp::angle(x_end, y_end);
00151 
00152    const double vtx_dcosx = track.GetBegVtx().CosX();
00153    const double vtx_dcosy = track.GetBegVtx().CosY();
00154    const double vtx_dcosz = track.GetBegVtx().CosZ();
00155 
00156    const double end_dcosx = track.GetEndVtx().CosX();
00157    const double end_dcosy = track.GetEndVtx().CosY();
00158    const double end_dcosz = track.GetEndVtx().CosZ();
00159 
00160    const double product = vtx_dcosx*end_dcosx + vtx_dcosy*end_dcosy + vtx_dcosz*end_dcosz;
00161 
00162    const double diff_x = end_dcosx - vtx_dcosx;
00163    const double diff_y = end_dcosy - vtx_dcosy;
00164 
00165    const double rot_diff_x =  diff_x*std::cos(xy_angle_vtx) + diff_y*std::sin(xy_angle_vtx);
00166    const double rot_diff_y = -diff_x*std::sin(xy_angle_vtx) + diff_y*std::cos(xy_angle_vtx);
00167 
00168    f1hVtxEndVecDiffX -> Fill(rot_diff_x);
00169    f1hVtxEndVecDiffY -> Fill(rot_diff_y);
00170    f1hVtxEndVecDiffZ -> Fill(end_dcosz - vtx_dcosz);
00171    f1hVtxEndVecCos -> Fill(product);
00172 
00173    const double cross_x = end_dcosy*vtx_dcosz - end_dcosz*vtx_dcosy;
00174    const double cross_y = end_dcosz*vtx_dcosx - end_dcosx*vtx_dcosz;
00175    const double cross_z = end_dcosx*vtx_dcosy - end_dcosy*vtx_dcosx;
00176    
00177    const double rot_cross_x =  cross_x*std::cos(xy_angle_vtx) + cross_y*std::sin(xy_angle_vtx);
00178    const double rot_cross_y = -cross_x*std::sin(xy_angle_vtx) + cross_y*std::cos(xy_angle_vtx);
00179 
00180    f1hVtxEndVecXProductX -> Fill(rot_cross_x);
00181    f1hVtxEndVecXProductY -> Fill(rot_cross_y);
00182    f1hVtxEndVecXProductZ -> Fill(cross_z);
00183    f1hVtxEndVecXProductR -> Fill(std::sqrt(rot_cross_x*rot_cross_x + rot_cross_y*rot_cross_y + cross_z*cross_z));
00184 }

bool Anp::PlotTrackGeom::Run ( Event event,
const Record record,
bool  pass 
) [virtual]

Implements Anp::AlgEvent.

Definition at line 45 of file PlotTrackGeom.cxx.

References Fill(), it, Anp::Event::MatchTrack(), Anp::Record::TrackBeg(), and Anp::Record::TrackEnd().

00046 { 
00047    if(!pass)
00048    {
00049       return true;
00050    }
00051 
00052    for(TrackIter it = record.TrackBeg(); it != record.TrackEnd(); ++it)
00053    {
00054       if(!event.MatchTrack(it -> TrackIndex()))
00055       {
00056          continue;
00057       }
00058       
00059       Fill(*it);
00060    }
00061 
00062    return true;
00063 }

bool Anp::PlotTrackGeom::Run ( Record record  )  [virtual]

Implements Anp::AlgSnarl.

Definition at line 66 of file PlotTrackGeom.cxx.

References Fill(), it, Anp::Record::TrackBeg(), and Anp::Record::TrackEnd().

00067 { 
00068    for(TrackIter it = record.TrackBeg(); it != record.TrackEnd(); ++it)
00069    {
00070       Fill(*it);
00071    }
00072 
00073    return true;
00074 }

void Anp::PlotTrackGeom::Set ( TDirectory *  dir  )  [virtual]

Reimplemented from Anp::AlgEvent.

Definition at line 348 of file PlotTrackGeom.cxx.

References f1hEndRMinusProjR, f1hProjEndDiffR, f1hProjEndDiffROverZ, f1hProjEndDiffX, f1hProjEndDiffXOverR, f1hProjEndDiffXOverY, f1hProjEndDiffXOverZ, f1hProjEndDiffXYAngle, f1hProjEndDiffY, f1hVtEndVtxProjDiffAngle, f1hVtxDirEndPointXZAngle, f1hVtxEndRadialCosDiff, f1hVtxEndRadialCosDiffRot, f1hVtxEndVecCos, f1hVtxEndVecDiffX, f1hVtxEndVecDiffY, f1hVtxEndVecDiffZ, f1hVtxEndVecXProductR, f1hVtxEndVecXProductX, f1hVtxEndVecXProductY, f1hVtxEndVecXProductZ, f1hVtxEndXYAngle, f1hVtxTransverseDir, f2hEndXY, f2hProjEndDiffRVsNPlane, f2hProjEndDiffXY, f2hProjEndDiffXYWide, f2hQPOverEQPVsProjEndDiffXYAngle, fDir, fDirName, fPlot, Anp::GetDir(), Anp::HistMan::Instance(), Anp::MakeTH1(), Anp::MakeTH2(), and Anp::HistMan::NMiss().

00349 {
00350    fPlot = false;
00351 
00352    if(!dir)
00353    {
00354       return;
00355    }
00356    
00357    fDir = Anp::GetDir(fDirName, dir);
00358    
00359    const unsigned int nmiss = HistMan::Instance().NMiss();
00360 
00361    f1hVtxDirEndPointXZAngle  = Anp::MakeTH1("geometry", fDir, "vtx_dir_end_point_xz_angle_diff");
00362    f1hVtxEndRadialCosDiff    = Anp::MakeTH1("geometry", fDir, "radial_dir_cos_diff_vtx_end");
00363    f1hVtxEndRadialCosDiffRot = Anp::MakeTH1("geometry", fDir, "radial_dir_cos_diff_vtx_end_rot");
00364    f1hVtxEndXYAngle          = Anp::MakeTH1("geometry", fDir, "vtx_end_xy_angle");
00365    f1hVtxTransverseDir       = Anp::MakeTH1("geometry", fDir, "vtx_transverse_dir");
00366    f1hVtxEndVecDiffX         = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_diff_x");
00367    f1hVtxEndVecDiffY         = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_diff_y");
00368    f1hVtxEndVecDiffZ         = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_diff_z");
00369    f1hVtxEndVecCos           = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_cos");
00370    f1hVtxEndVecXProductX     = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_cross_x");
00371    f1hVtxEndVecXProductY     = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_cross_y");
00372    f1hVtxEndVecXProductZ     = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_cross_z");
00373    f1hVtxEndVecXProductR     = Anp::MakeTH1("geometry", fDir, "vtx_end_vec_cross_r");
00374    f1hProjEndDiffXYAngle     = Anp::MakeTH1("geometry", fDir, "proj_end_diff_angle_xy");
00375    f1hProjEndDiffX           = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_x");
00376    f1hProjEndDiffY           = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_y");
00377    f1hProjEndDiffR           = Anp::MakeTH1("geometry", fDir, "proj_end_diff_radius");
00378    f1hProjEndDiffXOverR      = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_x_over_r");
00379    f1hProjEndDiffXOverZ      = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_x_over_z");
00380    f1hProjEndDiffXOverY      = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_x_over_y");
00381    f1hProjEndDiffROverZ      = Anp::MakeTH1("geometry", fDir, "proj_end_diff_rot_coord_r_over_z");
00382    f1hEndRMinusProjR         = Anp::MakeTH1("geometry", fDir, "end_r_minus_proj_r");
00383    f1hVtEndVtxProjDiffAngle  = Anp::MakeTH1("geometry", fDir, "end_vtx_end_proj_diff_angle");
00384 
00385    f2hProjEndDiffRVsNPlane          = Anp::MakeTH2("geometry", fDir, "proj_end_diff_rot_x_vs_nplane");
00386    f2hQPOverEQPVsProjEndDiffXYAngle = Anp::MakeTH2("geometry", fDir, "qp_over_eqp_vs_proj_end_diff_rot_angle_xy");
00387    f2hEndXY                         = Anp::MakeTH2("geometry", fDir, "end_xy");
00388    f2hProjEndDiffXY                 = Anp::MakeTH2("geometry", fDir, "proj_end_diff_xy");
00389    f2hProjEndDiffXYWide             = Anp::MakeTH2("geometry", fDir, "proj_end_diff_xy_wide");
00390 
00391    if(HistMan::Instance().NMiss() == nmiss)
00392    {
00393       fPlot = true;
00394    }
00395 }


Member Data Documentation

Definition at line 82 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 75 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 80 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 73 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 77 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 79 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 78 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 72 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 74 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 84 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 53 of file PlotTrackGeom.h.

Referenced by FillRotation(), and Set().

Definition at line 55 of file PlotTrackGeom.h.

Referenced by FillRotation(), and Set().

Definition at line 56 of file PlotTrackGeom.h.

Referenced by FillRotation(), and Set().

Definition at line 65 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 62 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 63 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 64 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 70 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 67 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 68 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 69 of file PlotTrackGeom.h.

Referenced by FillXProduct(), and Set().

Definition at line 58 of file PlotTrackGeom.h.

Referenced by FillRotation(), and Set().

Definition at line 60 of file PlotTrackGeom.h.

Referenced by Fill(), and Set().

Definition at line 90 of file PlotTrackGeom.h.

Referenced by Fill(), and Set().

Definition at line 87 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 92 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 93 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

Definition at line 88 of file PlotTrackGeom.h.

Referenced by FillProjection(), and Set().

TDirectory* Anp::PlotTrackGeom::fDir [private]

Definition at line 46 of file PlotTrackGeom.h.

Referenced by Fill(), and Set().

std::string Anp::PlotTrackGeom::fDirName [private]

Definition at line 51 of file PlotTrackGeom.h.

Referenced by Config(), and Set().

bool Anp::PlotTrackGeom::fPlot [private]

Definition at line 48 of file PlotTrackGeom.h.

Referenced by Fill(), and Set().

Definition at line 49 of file PlotTrackGeom.h.

Referenced by Config(), Fill(), and FillProjection().


The documentation for this class was generated from the following files:

Generated on 16 Apr 2018 for loon by  doxygen 1.6.1