SDK Organization

The Software Development Kit (SDK) of SAMSON is composed of a set of libraries gathered in seven library groups:

Naming conventions

The vast majority of files contain only one class declaration and / or definition and, in this case, the file name (excluding the extension) is the class name. Due to the large number of libraries and files, the SAMSON SDK has a strict naming policy. Precisely, for each file:

  • The first two letters are SB (SAMSON Base)
  • The third letter indicates the library group (e.g. SBD for DataModel)
  • The next n letters indicate the library name (e.g. SBDDataGraph for the DataGraph library in DataModel)
  • The (optional) next m are used to differentiate class names in the library (e.g. SBDDataGraphEvent and SBDDataGraphNode)

Since this may result in long names in some cases, short names are provided for frequently used classes. For example, the short name of the SBMStructuralModelNodeAtom class is SBAtom. When available, the short name of a class is indicated in the class documentation. For example, the documentation of the SBMStructuralModelNodeAtom class contains the following line:

Short name: SBAtom

Class names in SAMSON Elements generated thanks to the SAMSON Element generator follow a similar convention:

  • The first two letters are SE (SAMSON Element)
  • The next n letters indicate the Element name (e.g. ProteinProteinDocker)
  • The next m letters indicate a class name (e.g. MainApp)

Please refer to the documentation of the SAMSON Element generator for more examples.

Finally, all macros defined in the SAMSON SDK begin with SB_ (e.g. SB_REGISTER_TYPE).