overview    download    features    feedback
support    models    developers    code   
developer resources

Technical Source Code Documentation

NFsim is an open source project and we encourage you to take the time to learn the code and make your own improvements, tweaks, and adjustments. While we cannot guarantee support, feel free to send us technical questions or specific coding requests through the feedback page.

The source code is packaged with the full distribution of NFsim, and this is the best way to begin development. You can develop, compile, build and test the code in any environment you want, but we strongly suggest you consider using Eclipse (http://www.eclipse.org) as your IDE. Eclipse is an excellent and free development environment. It was originally designed for Java, but it works great for C/C++ and has plug-in support for many other languages (including a nice XML viewer). NFsim was originally developed in Eclipse, and you'll notice that all the makefiles in the 'bin' directory have been automatically generated using Eclipse. To use Eclipse with NFsim, you will need the CDT set of plugins for Eclipse (http://www.eclipse.org/cdt). The instructions for downloading and installing Eclipse and setting up a project in Eclipse from existing source code can be found on their website.

The best way to familiarize yourself with the code is to begin with the simple system example (located in the src/NFtest/simple_system directory). This file is heavily documented and will allow you to hard code your own model and show you the basic data structures and utilities that exist in NFsim. Try building your own system, and as you do, begin learning the basic data structures and functionality of the classes in the src/NFcore directory. Finally, once you begin to work with the code, you will find it useful to have the technical source code documentation.

And if you do happen to create the next amazing simulator with unheard of capabilities using our code base, please let us know! We will definitely be interested and we'll want to talk!