1 # Command Line Tools {#commandref}
3 @brief Reference describing the tools available through the `crombie` command.
5 A number of scripts are available to the user through the `crombie` command line tool.
6 They can be accessed by entering
10 The list of available subcommands are given below.
12 <table cellpadding=20>
14 <td align="left" valign="top">
15 <code>backupslides</code>
18 From a [workspace](@ref workspace) `docs` directory or presentation subdirectory,
19 `crombie backupslides` searches the `figs` sub-directory for `.pdf` files.
20 If the `.pdf` file is not included in any `.tex` files in the local directory
21 (excluding `backup_slides.tex`), the `.pdf` image will be placed on a frame in
22 `backup_slides.tex` to be included in a presentation.
24 If you add `all` to the end of the command, even images in other `.tex` files will
25 be included in the backup slides.
29 <td align="left" valign="top">
33 Removes all files created by `crombie compile`.
34 This can also take an optional arguments to only clean certain classes.
38 <td align="left" valign="top">
42 This checks the cross section configuration files, which are passed as arguments.
43 It prints out disagreements with the centralized CrossSecDB
44 and generates a suggested new configuration file.
48 <td align="left" valign="top">
52 Compiles all of the objects in the package.
53 Can also take optional arguments to only compile named class (and dependencies).
54 Will only recompile the objects if cleaned or the source files have been changed.
58 <td align="left" valign="top">
62 Compares the flat n-tuples withing two different directories.
63 Basic functionality is to compare the number of events in histograms and trees
64 inside each identically basenamed file.
65 Individual branches can also be compared.
66 The output of `crombie diff -h` is shown for more information.
69 usage: crombie diff [-h] [--numproc NUM] [--treename TREENAME]
70 [--skip-branches [BRANCHES [BRANCHES ...]]] [--verbose]
71 [--check-branch] [--loose-match]
74 Checks two directories to make sure they have the same number of files and
75 number of events in the tree and hist for each file
78 DIRECTORY The names of the two directories to compare.
81 -h, --help show this help message and exit
83 Number of processes that FlatSkimmer will spawn.
84 --treename TREENAME, -t TREENAME
85 The name of the trees to friend.
86 --skip-branches [BRANCHES [BRANCHES ...]], -s [BRANCHES [BRANCHES ...]]
87 Set branches to skip comparison.
88 --verbose, -v Give a verbose checker to watch progress.
89 --check-branch, -b Checks if two branches have the same entries.
90 --loose-match, -l If true, matches when the file names do not match
91 perfectly. Instead, if one file matches the beginning
92 of another perfectly, a comparison is made.
97 <td align="left" valign="top">
101 This checks if a `.root` file has a tree inside it, and if the tree has entries.
105 <td align="left" valign="top">
109 This looks inside a specified directory and does a fit
110 to adjust processes and bins based on the data card inside.
111 See the [fit page](@ref fit) for details.
115 <td align="left" valign="top">
116 <code>generatedocs</code>
119 If you have doxygen installed, this command will automatically generate the
120 documentation for Crombie Tools. There are two subcommands.
121 <table cellpadding=10>
123 <td align="left" valign="top">
127 Will copy the documentation to a server through ssh.
128 See the file itself for how to change server locations.
132 <td align="left" valign="top">
136 Will generate the html only (default also makes a LaTeX manual).
143 <td align="left" valign="top">
144 <code>localslim</code>
147 This tools allows for running the [slimmer](@ref slimming) interactively in a shell.
148 Like `submitlxbatch`, this sources a local [CrombieSlimmingConfig.sh](@ref envconfig) to set a number of environment variables.
149 `crombie terminalslim` also comes with the same subcommands as `crombie submitlxbatch`, except for `test`.
153 <td align="left" valign="top">
154 <code>maketree</code>
157 This automatically generates a tree from a configuration file.
158 There is more information on these configuration files [here](@ref maketree).
162 <td align="left" valign="top">
163 <code>presentation</code>
166 From inside a [workspace's](@ref workspace) `docs` directory, this command
167 creates a dated directory and copies a local `presentation.tex` into that directory.
168 The copied file is named according to username, the workspace name, and the date.
172 <td align="left" valign="top">
173 <code>removefailed</code>
176 In CRAB jobs, there are often partial N-tuples output in a `failed` directory in the output location.
177 `crombie removefailed` checks the `failed` directory and deletes each file inside if there is a larger
178 file located in the successfully completed files.
179 If the `failed` directory is cleared in this way, the directory is removed.
183 <td align="left" valign="top">
184 <code>submitlxbatch</code>
187 `crombie submitlxbatch` sources a local [CrombieSlimmingConfig.sh](@ref envconfig) to set a number of variables
188 that are used to submit [slimming](@ref slimming) jobs to LXBATCH.
190 There are additional subcommands available to `crombie submitlxbatch`.
191 <table cellpadding=10>
193 <td align="left" valign="top">
197 Deletes the files in [$CrombieTempDir](@ref envconfig) and resubmits all possible jobs.
201 <td align="left" valign="top">
205 Does not submit jobs, but goes directly to hadding what finished [slimmed](@ref slimming) files are available.
209 <td align="left" valign="top">
213 Resubmits using the existing `.txt` files inside [$CrombieTempDir](@ref envconfig).
214 The usual behavior is to recreate these files from the input directories every time.
218 <td align="left" valign="top">
222 Instead of submitting jobs, the submit commands are echoed to stdout.
223 If all output files are available, the hadding step will still be attempted.
230 <td align="left" valign="top">
234 Prints the `-I` and `-L` tags for compiling with g++ using CrombieTools.
235 `crombie tags` can then be placed directly in your Makefile.
239 <td align="left" valign="top">
243 This updates the Crombie Tools package to match the upstream of your current branch.
247 <td align="left" valign="top">
248 <code>workspace</code>
251 Copies a number of template files into the directory you call it from.
252 These files are used to configure the Skimming tools.
253 This is a [workspace](@ref workspace).
254 For additional example files, give the optional argument <code>crombie workspace test</code>.