DryChem 1.0.0
A generic, compile-time C++ toolbox with no dependencies for the modern computational chemistry project.
Loading...
Searching...
No Matches
common-utilities Directory Reference

Directories

 include
 
 libs
 

Detailed Description

Welcome to the Common-Utilities project! This project is a compilation of a number of unrelated programs and scripts I've written over the years, providing a single source of utilities for their use in other repositories.

Table Of Contents

Building and Installing

To build the common-utilities libraries and scripts there are a few options that can be specified when building with cmake, these are discussed here:

C++ Libraries

The libraries included in this project include the following, and more information can be found in the specific libraries documentation:

The following tree diagram shows how a sample library, library1, would be organized in the API:

.
├── include
│   └── common-utils
│   ├── library1
│   │   └── ...
│   ├── library1.hpp
│   └── ...
├── libs
│   └── library1
│   ├── docs
│   │   └── ...
│   ├── samples
│   │   └── ...
│   └── tests
│   ├── testAllLibrary1Functions.cpp
│   └── ...
└── src
├── library1
| └── ...
└── ...

The libs directory contains information about the specific library, such as the documentation, example code samples, and unit tests. The include/common-utils directory is where the header files for the library are stored. Note that the libraryName.hpp file serves as the public API of the library and should be #include'd in a user's project. The files in the libraryName directory contain the internal implementation details and are subject to change without notice.

Bash Scripts

Consisting of a number of bash scripts for mainly automating some of my most common tasks, the files located in the [root/common-utilities/scripts](scripts) directory are simple scripts and programs that don't really belong in any other repository, so they have been collected here.

For the programs that support command-line argument parsing, the -h flag will print the help message associated with the program. Scripts like errorHandling.sh, showOpts.sh, and typeParsing.sh are designed to either be incorporated in other bash programs or are so simple, no help option is needed.

When the repository is installed, all shell scripts will be installed without the .sh extension and will be made executable. If the ${CMAKE_INSTALL_PREFIX}/bin directory is in the system's path, these programs can be called as follows:

$ changeCase -h
USAGE: changeCase [-hvulf] [-w STRING]
-h Prints help information about the changeCase program.
-v Verbose mode. Defaults to false/off.
-u Change word/letter to uppercase. Defaults to false/off.
-l Change word/letter to lowercase. Defaults to false/off.
-f Change only the first letter to selected case. Defaults to false/off.
-w REQUIRED: Word to change case of.
EXAMPLE: changeCase -f -l -w LOWERCASE
$ changeCase -l -w LOWERCASE
lowercase