Copyd0om -------- Copyd0om.py can be used to copy, split, merge, and reformat d0om files. Copyd0om.py understands DSPACK and EVPACK format d0om files. Copyd0om.py has a quick help message, that may be seen by typing "copyd0om.py" without any arguments. Here it is: % copyd0om.py Usage: copyd0om.py - Input file. - Output file (optional). - Options Known options: -dump - Dump Chunks. -id - Dump Collision id's. -skip n - Skip n events. -copy n - Copy n events. -files n - Copy at most n files. -max_per_file n - Maximum n events per file (for file splitting). -sync - Synchronize output file advance with input files. -input_files_per_file - Number of input files per output file. -oform - Output format (DSPACK or EVPACK). -comp n - Compression level (non-zero implies -oform EVPACK). -sort type - Sort type (sequential, numeric, reverse_sequential, reverse_numeric, random) -veto - Output filter veto classes. -write - Output filter write classes. -chunks - Output filter write chunks. -embed_defs - Embed a dspack dictionary in each evpack record. -status_file - Specify status file. -status_level n - Specify status level. Examples: 1. Basic copy, one d0om file to another file. % copyd0om.py in.ds out.ds 2. Merging files. % copyd0om.py "*.ds" out.ds # Wildcard. % copyd0om.py "*.ds" out.ds -files 10 # A wildcard subset. % cpoyd0om.py "in1.ds in2.ds" out.ds # A command line list of files. % copyd0om.py listfile:list.dat out.ds # A list file (one file per line). 3. Splitting files. % copyd0om.py in.ds "out1.ds out2.ds out3.ds" -max_per_file 100 % copyd0om.py in.ds listfile:list.dat -max_per_file 100 4. Dump collision ids. % copyd0om.py in.ds -id 5. Copy a subset of events. % copyd0om.py in.ds out.ds -skip 10 -copy 1 # Extract 11th event. 6. Edit events. % copyd0om.py in.ds out.ds -veto MyClass # Drop class MyClass. % copyd0om.py in.ds out.ds -chunks "MCKineChunk MyChunk" # Drop all chunks except MCKineChunk and MyChunk. 7. Reformat. % copyd0om.py in.ds out.ds -comp 5 # Change compression level.