Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Here's an overview of what you'll find in our GitHub repository:

Home folder

  • README.rst - reStructuredText file with a brief introduction to the GUI, along with installation instructions
  • license.txt - GPL v3.0 license file
  • .gitignore - lists the files and folders Git shouldn't track; for example, binaries in the build/ folder that shouldn't be uploaded to the repository
  • astyle.options - used to automatically enforce style conventions. See Coding standards for more info.
  • open-ephys.jucer - the file loaded into the "Introjucer" that defines how the GUI should be compiled. IMPORTANT: Makefiles are auto-generated by the Introjucer, so if you want to add files, delete files, or change the compiler flags, you must do it through the Introjucer, available in the Introjucer/ folder.

...

  • Main and MainWindow files
  • Plugins folder - Code for all core plugins
  • Processors folder
    • All of the individual data processing modules hardcoded in the GUI
    • DataThreads folder - source code for threads that interface with external inputs
    • Editors folder - source code for processor base editors
    • Utilities folder - source code for splitters and mergers
    • Visualization folder - the base source code for visualizers, such as the LfpDisplayCanvas
  • UI folder - source code for user-interface classes
  • Network folder - network-related code
  • Dsp folder - code from the Digital signal processing library
  • Audio folder - code for interfacing with the system audio

...

Any new resources must be added to the these folders AND referenced within the Introjucer application. For fonts used by Juce components, you need to serialize the fonts using the Font Serializer application found here.

Builds folder

  • Build files for the main application are generated by Projucer
  • Build files for plugins should be made according to  Plugin build files
  • holds the Linux Makefile, Xcode project, and project files for Visual Studio 2012, 2013, and 2015
  • Check out the Linux, Mac OS X macOS, and Windows wiki pages for issues with compiling the GUI on different platforms.