Difference between revisions of "Portal:Develop"
Line 1: | Line 1: | ||
+ | == The MNE-CPP Project Structure== | ||
+ | Highly modular and easily extendable | ||
+ | Cross platform capable: Windwos, Linux, Mac, handheld devices & embedded systems | ||
+ | Purely written in C++ | ||
+ | MNE-CPP is set up as a two layer structure: | ||
+ | |||
+ | Library layer: | ||
+ | Backbone of the MNE-CPP framework | ||
+ | Different libraries providing core features & functionalities | ||
+ | Application layer: | ||
+ | User interaction of the MNE-CPP framework | ||
+ | Full scale GUI applications with rich user experience | ||
+ | Command line applications | ||
+ | Simple examples for an easy start | ||
+ | Unit tests: Safeguarding correctness of results | ||
+ | Dependencies: | ||
+ | |||
+ | Keep dependencies to a minimum | ||
+ | Qt [1] for Graphical User Interface integration | ||
+ | Light-weight template library Eigen [2] for linear algebra | ||
+ | Future proof: Qt/Eigen are highly & activley maintained | ||
+ | Avoid SOUP (Software Of Unknown Pedigree) | ||
+ | |||
== The MNE-CPP Development Cycle== | == The MNE-CPP Development Cycle== | ||
=== Project Management === | === Project Management === |
Revision as of 12:27, 11 January 2016
Contents
The MNE-CPP Project Structure
Highly modular and easily extendable Cross platform capable: Windwos, Linux, Mac, handheld devices & embedded systems Purely written in C++ MNE-CPP is set up as a two layer structure:
Library layer: Backbone of the MNE-CPP framework Different libraries providing core features & functionalities Application layer: User interaction of the MNE-CPP framework Full scale GUI applications with rich user experience Command line applications Simple examples for an easy start Unit tests: Safeguarding correctness of results Dependencies:
Keep dependencies to a minimum Qt [1] for Graphical User Interface integration Light-weight template library Eigen [2] for linear algebra Future proof: Qt/Eigen are highly & activley maintained Avoid SOUP (Software Of Unknown Pedigree)
The MNE-CPP Development Cycle
Project Management
The MNE-CPP project is maintained by an agile management approach, using JIRA. JIRA is a well known issue tracking tool by Atlassian, which let's you post bug reports, improvement tasks, wishes for new features and much more. It gives you a way to directly participate in the development of MNE-CPP. Please go to MNE-CPP's JIRA website and sign up for an account if you wish to help to improve MNE-CPP.
Next to JIRA we also use Atlassian's Confluence to share documents, meeting notes and other project related files. You can find our confluence page here.
Tutorials
Introductive
Create a MNE-CPP based application