CMS 3D CMS Logo

Functions | Variables
diffTrackingNtuple Namespace Reference

Functions

def body (opts, ev1, ev2, printTrack)
 
def inOrder (opts, ntpl1, ntpl2, args, kwargs)
 
def main (opts)
 
def outOfOrder (opts, ntpl1, ntpl2, args, kwargs)
 

Variables

 action
 
 default
 
 description
 
 help
 
 int
 
 opts
 
 parser
 
 type
 

Function Documentation

def diffTrackingNtuple.body (   opts,
  ev1,
  ev2,
  printTrack 
)

Definition at line 10 of file diffTrackingNtuple.py.

References edm.print(), and str.

Referenced by inOrder(), and outOfOrder().

10 def body(opts, ev1, ev2, printTrack):
11  print(ev1.eventIdStr())
12 
13  tracks1 = ev1.tracks()
14  tracks2 = ev2.tracks()
15 
16  singleTrack = (opts.track is not None)
17  if singleTrack:
18  tracks1 = [tracks1[opts.track]]
19 
20  diff = ntuple.diffTrackListsGeneric(printTrack, tracks1, tracks2, ignoreAdditionalLst2=singleTrack)
21  if diff.hasDifference():
22  print(str(diff))
23  print()
24 
def body(opts, ev1, ev2, printTrack)
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
#define str(s)
def diffTrackingNtuple.inOrder (   opts,
  ntpl1,
  ntpl2,
  args,
  kwargs 
)

Definition at line 25 of file diffTrackingNtuple.py.

References body().

Referenced by main().

25 def inOrder(opts, ntpl1, ntpl2, *args, **kwargs):
26  if opts.entry is not None:
27  ev1 = ntpl1.getEvent(opts.entry)
28  ev2 = ntpl2.getEvent(opts.entry)
29 
30  if ev1.eventId() != ev2.eventId():
31  raise Exception("Events are out of order, entry %d file1 has %s and file %s. Use --outOfOrder option instead." % (ev1.entry(), ev1.eventIdStr(), ev2.eventIdStr()))
32 
33  body(opts, ev1, ev2, *args, **kwargs)
34  return
35 
36  for i, (ev1, ev2) in enumerate(itertools.izip(ntpl1, ntpl2)):
37  if opts.maxEvents >= 0 and i >= opts.maxEvents:
38  break
39 
40  if ev1.eventId() != ev2.eventId():
41  raise Exception("Events are out of order, entry %d file1 has %s and file %s. Use --outOfOrder option instead." % (ev1.entry(), ev1.eventIdStr(), ev2.eventIdStr()))
42 
43  body(opts, ev1, ev2, *args, **kwargs)
44 
45 
def body(opts, ev1, ev2, printTrack)
def inOrder(opts, ntpl1, ntpl2, args, kwargs)
def diffTrackingNtuple.main (   opts)

Definition at line 71 of file diffTrackingNtuple.py.

References inOrder(), outOfOrder(), and edm.print().

71 def main(opts):
72  ntpl1 = ntuple.TrackingNtuple(opts.file1)
73  ntpl2 = ntuple.TrackingNtuple(opts.file2)
74 
75  print("--- %s" % opts.file1)
76  print("+++ %s" % opts.file2)
77 
78  printTrack = ntuple.TrackPrinter(trackingParticlePrinter=ntuple.TrackingParticlePrinter(parentage=False), diffForTwiki=opts.twiki)
79 
80  if opts.outOfOrder:
81  outOfOrder(opts, ntpl1, ntpl2, printTrack)
82  else:
83  inOrder(opts, ntpl1, ntpl2, printTrack)
84 
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
def inOrder(opts, ntpl1, ntpl2, args, kwargs)
def outOfOrder(opts, ntpl1, ntpl2, args, kwargs)
def diffTrackingNtuple.outOfOrder (   opts,
  ntpl1,
  ntpl2,
  args,
  kwargs 
)

Definition at line 46 of file diffTrackingNtuple.py.

References body(), and edm.print().

Referenced by main().

46 def outOfOrder(opts, ntpl1, ntpl2, *args, **kwargs):
47  if opts.entry is not None:
48  raise Exception("--entry does not make sense with --outOfOrder")
49 
50  events2 = collections.OrderedDict()
51  for ev2 in ntpl2:
52  events2[ev2.eventIdStr()] = ev2.entry()
53 
54  for i, ev1 in enumerate(ntpl1):
55  if opts.maxEvents >= 0 and i >= opts.maxEvents:
56  break
57 
58  if not ev1.eventId() in events2:
59  print("-", ev1.eventIdStr())
60  continue
61 
62  ev2 = ntpl2.getEvent(events2[ev1.eventIdStr()])
63  events2.remove(ev1.eventId())
64 
65  body(opts, ev1, ev2, *args, **kwargs)
66 
67 
68  for eventIdStr in events2.iterkeys():
69  print("+", eventIdStr)
70 
def body(opts, ev1, ev2, printTrack)
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
def outOfOrder(opts, ntpl1, ntpl2, args, kwargs)

Variable Documentation

diffTrackingNtuple.action

Definition at line 91 of file diffTrackingNtuple.py.

diffTrackingNtuple.default

Definition at line 95 of file diffTrackingNtuple.py.

diffTrackingNtuple.description

Definition at line 86 of file diffTrackingNtuple.py.

diffTrackingNtuple.help

Definition at line 88 of file diffTrackingNtuple.py.

diffTrackingNtuple.int

Definition at line 95 of file diffTrackingNtuple.py.

diffTrackingNtuple.opts

Definition at line 102 of file diffTrackingNtuple.py.

diffTrackingNtuple.parser

Definition at line 86 of file diffTrackingNtuple.py.

diffTrackingNtuple.type

Definition at line 87 of file diffTrackingNtuple.py.