Structure

  • doc/ - Documentation, Manuals
  • src/ - Source codes
    • check/ - Checkers algorithms
      • pseudocode/ - Shared algorithm functions
      • liveness/ - Check deadlock and livelock
      • order/ - Check acyclic and FIFO
      • race/ - Check race conditions
    • data/ - Structures describing MSC
      • Engmann/ - Import of Steffen's Engmann text format
      • Z120/ - Export and import of ITU-T Z.120 text format
      • pcap/ - Import from pcap format
      • exporttex/ - Export to tex format
    • view/visio/ - Application
      • addon/ - source codes for Visio add-on
      • stencils/ - stencils and templates
  • test/ - executable test files

Conventions

Source files should have uniform form and must contain header section with licence information. See coding conventions.

All source code have to be licensed as GNU Lesser General Public License (LGPL) or as more benevolent license. The code licensed as GNU General Public Licence(GPL) can not be used (according to visio plug-ins restrictions). In subversion are included only origin source codes.
That means:

  • No automaticaly generated files, only script (makefile) for generating
  • No files downloaded from internet, only links or tutorials for download
  • No temporary items from Visual Studio etc.

The *.h and *.cpp files should be in the same folder.

Important information for commit

  • All added files must have following property (enables multiplatform compilation)
    svn:eol-style=native;svn:keywords=Id 
  • Set autoprops for SVN
    • Section [auto-props] edit as follows:
      *.c = svn:eol-style=native;svn:keywords=Id
      *.cpp = svn:eol-style=native;svn:keywords=Id
      *.h = svn:eol-style=native;svn:keywords=Id
      *.in = svn:eol-style=native;svn:keywords=Id
  • Run tests and check if all of them pass
    • Unix: In "{scstudio}/trunk/" run "make test"
    • Windows: Open "{scstudio}/trunk/scstudio.sln", right click on project RUN_TESTS, choose "project only->build only RUN_TESTS".