List the available commands information such as the name, the level, the type and the description.
Use the command-line tool ccsdoc
to list the commands and configuration parameters either on a given file or in a directory.
- on a single file
ccsdoc parse --path JavaFile.java
- on a full directory to process recursively all .java files
ccsdoc parse --path java_project_dir
Commands or configuration parameters can be output to a directory.
ccsdoc parse --path JavaFile.java --to javafile_commands.csv
By default, both commands and configuration parameters are returned. In case only one of them is desired, pass in the corresponding flag: --commands
or --params
.
Use ccsdoc parse -h
for details about the available options.
The CSV table containing the commands can be converted to the desired format using pandoc
# e.g. here to Microsoft Word
ccsdoc convert javafile_commands.csv --to docx
$ ccsdoc parse --path simulation/SimuEPOSController.java
SimuEPOSController: simulation/SimuEPOSController.java
Command[name=setPosition, type=ACTION, level=ENGINEERING1, desc='For simulator only : update position with a position given as argument.', args=(int actualPosition)]
Command[name=checkFault, type=QUERY, level=ENGINEERING1, desc='Check if the controller is in fault.']
Command[name=enableAndWriteRelativePosition, type=ACTION, level=ENGINEERING3, desc='Enable controller and go to relative position. Doesn't check condition. Danger !!!!', args=(int pos)]
$ ccsdoc parse --path Autochanger.java --params
Autochanger: Autochanger.java
ConfigurationParameter[name=timeToUpdateProtectionSystem, type=long, desc='Time to wait until protection system signals are updated', category=autochanger, units=milliseconds, range=[UNDEFINED, UNDEFINED]]
ConfigurationParameter[name=waitTimeForBrakeOC, type=int, desc='Time to wait between activatebrake and disableoperation for online clamps', category=autochanger, units=milliseconds, range=[UNDEFINED, UNDEFINED]]
ConfigurationParameter[name=waitTimeForBrakeLR, type=int, desc='Time to wait between activatebrake and disableoperation for linear rails', category=autochanger, units=milliseconds, range=[UNDEFINED, UNDEFINED]]
$ ccsdoc parse --path SimuLoaderStandalonePlutoGateway.java
SimuLoaderStandalonePlutoGateway:
=> simulation/SimuLoaderStandalonePlutoGateway.java: issue at line 39: Missing command argument 'description'.
pip install ccsdoc
Alexandre Boucaud aboucaud@apc.in2p3.fr (CNRS/IN2P3)
BSD 3-Clause license, see the LICENSE file for more information