|
|
|
|
What does it look likeThe first question usually asked, are there any screen shots. Well I have to admit it's not much to look at yet, but for what its worth here are the obligatory shots. This first one shows the Glade GUI development environment (running on XP, but of course just as capable in its home territory of Linux). This shows the 4 separate windows comprising the interface. The options window is not yet hooked in but is based on a properties view commonly found in development environments. This second shot shows the system actively running on a Linux Ubuntu box under Gnome. The third one shows it running, of course under XP. It's also perfectly happy running across machines, which can be the same or different OS's. There is a fuller explanation of how this works in the technical section. Quick start to ERLINK-SRThis is the quick start to understanding what this project is about. It is
non-technical and written from a user perspective. I hope it is understandable -
if not please shout! First things first, the project name is ERLINK-SR standing for ERlang LINKed Software Radio. The modules comprising the system are all named erlink-xxx. At present there are three modules (it's just a start). These are :
One term that will be used is node. It so happens that in the current implementation each module is also a node. A node is nothing more than an executable, multiple nodes can run on the same machine or on different machines. The only way nodes communicate is by sending messages to each other, generally via the switcher. A simple use-caseThe following diagram shows a typical use-case (a use-case is just a term that means a scenario of one use of a system, such as logging on). Something external to the system will always initiate a use-case such as a user pressing a button or a CAT device sending a request. The use-case I will explain here is the user pressing the 'PowerOn' button but the sequence holds true for just about any user interaction. The messages are labelled in sequence and explained below.
For ease of explanation the modules will be called user interface, application and message switch rather than their cryptic module names.
There are a few subtleties to note - ignore this if the above was enough information. You might be wondering what value the message switch adds, why not just send the messages direct? What it does is to make it a level playing field, not all modules are as capable as others.
This capability offered by the message switch to queue messages until the next is requested is very useful for our two communicating nodes. The power-on interaction is actually the most demanding because multiple updates are applied to the user interface as a result. Some of those updates generate new messages to the application which responds with more updates. The user interface would rather forget the new updates until it has finished with the current batch, this much simplifies the programming model. |