vfs australia
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 71
Finance::Quote::Yahoo::Australia 1.12
Finance::Quote::Yahoo::Australia is a Perl module to fetch Australian stock quotes via Yahoo. more>>
Finance::Quote::Yahoo::Australia is a Perl module to fetch Australian stock quotes via Yahoo.
SYNOPSIS
use Finance::Quote;
my $q = Finance::Quote->new;
my %info = $q->fetch("yahoo_australia","BHP"); # Use this module only.
my %info = $q->fetch("australia","BHP"); # Failover with other methods.
This module allows information to be fetched from Yahoo abouts stocks traded on the Australian Stock Exchange. Information about indexes (such as the All Ordinaries) are not available through this module, although if information is requested from the "australia" source then these will automatically failover to direct queries from the Australian Stock Exchange.
This module is loaded by default on a Finance::Quote object, although it can be explicitly loaded by passing the argument "Yahoo::Australia" to Finance::Quote->new().
This module provides both the "australia" and "yahoo_australia" fetch methods. You should use the "australia" method if you wish to allow failovers to other sources, and "yahoo_australia" if you only want to obtain quotes from this module.
Information obtained via this module is governed by Yahoos terms and conditions, see http://au.finance.yahoo.com/ for more details.
LABELS RETURNED
This module returns all the standard labels (where available) provided by Yahoo, as well as the currency label. See Finance::Quote::Yahoo::Base for more information.
<<lessSYNOPSIS
use Finance::Quote;
my $q = Finance::Quote->new;
my %info = $q->fetch("yahoo_australia","BHP"); # Use this module only.
my %info = $q->fetch("australia","BHP"); # Failover with other methods.
This module allows information to be fetched from Yahoo abouts stocks traded on the Australian Stock Exchange. Information about indexes (such as the All Ordinaries) are not available through this module, although if information is requested from the "australia" source then these will automatically failover to direct queries from the Australian Stock Exchange.
This module is loaded by default on a Finance::Quote object, although it can be explicitly loaded by passing the argument "Yahoo::Australia" to Finance::Quote->new().
This module provides both the "australia" and "yahoo_australia" fetch methods. You should use the "australia" method if you wish to allow failovers to other sources, and "yahoo_australia" if you only want to obtain quotes from this module.
Information obtained via this module is governed by Yahoos terms and conditions, see http://au.finance.yahoo.com/ for more details.
LABELS RETURNED
This module returns all the standard labels (where available) provided by Yahoo, as well as the currency label. See Finance::Quote::Yahoo::Base for more information.
Download (0.090MB)
Added: 2006-12-12 License: Perl Artistic License Price:
1046 downloads
Marlin 0.9
Marlin is a sound sample editor. more>>
Marlin is a sample editor for Gnome 2. It uses GStreamer for file operations and for recording and playback, meaning it can handle a great number of formats and work with most sound systems.
Main features:
- Can load from a large number of media formats (.mp3, .ogg, .wav, .au, .flac, .mpg, .avi...)
- Can save to many formats (.mp3, .wav, .au, .ogg, .flac...) and use the Gnome-Media profiles
- Can handle large files with no problems
- Handles cut, copy, paste, replace and mix operations
- Infinite levels of Undo/Redo and everything should be undoable
- Fully Gnome 2 HIG compliant
- Can record from a variety of sources (ALSA, OSS, esd, arts)
- Playback
- Can extract audio from CDs (with optional musicbrainz lookup)
- Gnome-VFS support
- Horizontal and Vertical scaling
- Uses GStreamer
<<lessMain features:
- Can load from a large number of media formats (.mp3, .ogg, .wav, .au, .flac, .mpg, .avi...)
- Can save to many formats (.mp3, .wav, .au, .ogg, .flac...) and use the Gnome-Media profiles
- Can handle large files with no problems
- Handles cut, copy, paste, replace and mix operations
- Infinite levels of Undo/Redo and everything should be undoable
- Fully Gnome 2 HIG compliant
- Can record from a variety of sources (ALSA, OSS, esd, arts)
- Playback
- Can extract audio from CDs (with optional musicbrainz lookup)
- Gnome-VFS support
- Horizontal and Vertical scaling
- Uses GStreamer
Download (1.1MB)
Added: 2005-07-19 License: GPL (GNU General Public License) Price:
1699 downloads
Nariva 0.1
Nariva project is a search service using Apache Lucene, VFS, and XML-RPC. more>>
Nariva project is a search service using Apache Lucene, VFS, and XML-RPC.
Nariva is an application which aims to provide cross- platform, open API search functionality targeted at desktops. It uses Apache Lucene to perform the indexing and searching functionality and also exposes the Apache Lucene API as an XML-RPC service (provided using Apache XML- RPC).
Files on the local file system are monitored using a sandbox component called Commons Virtual Filesystem (VFS). Nariva ties all these projects together to provide a simple, fast, cross platform, desktop search solution.
Main features:
- Runs cross platform - Written in Java.
- Provides a webservice interface using XML-RPC so its easy to create custom GUI client.
- Low priority search service thread reduces noticable CPU usage.
- Can monitor more than one folder at a time.
- Extendable by using custom index classes set in preferences.
- Provides a default text extraction class for indexing unrecognized file types.
- Built in support for indexing and searching text, html, pdf and maf files.
- MAF Search GUI integrates into Firefox search engine list.
- By default only accepts connections from localhost (127.0.0.1).
- Search on specific fields or use full text search with boolean, fuzzy and proximity matches - Provided by Lucene.
- Re-indexes changed documents in monitored folders dynamically.
<<lessNariva is an application which aims to provide cross- platform, open API search functionality targeted at desktops. It uses Apache Lucene to perform the indexing and searching functionality and also exposes the Apache Lucene API as an XML-RPC service (provided using Apache XML- RPC).
Files on the local file system are monitored using a sandbox component called Commons Virtual Filesystem (VFS). Nariva ties all these projects together to provide a simple, fast, cross platform, desktop search solution.
Main features:
- Runs cross platform - Written in Java.
- Provides a webservice interface using XML-RPC so its easy to create custom GUI client.
- Low priority search service thread reduces noticable CPU usage.
- Can monitor more than one folder at a time.
- Extendable by using custom index classes set in preferences.
- Provides a default text extraction class for indexing unrecognized file types.
- Built in support for indexing and searching text, html, pdf and maf files.
- MAF Search GUI integrates into Firefox search engine list.
- By default only accepts connections from localhost (127.0.0.1).
- Search on specific fields or use full text search with boolean, fuzzy and proximity matches - Provided by Lucene.
- Re-indexes changed documents in monitored folders dynamically.
Download (MB)
Added: 2007-02-13 License: GPL (GNU General Public License) Price:
984 downloads
ASFS filesystem driver 1.0 Beta 12
ASFS filesystem driver is an Amiga Smart FileSystem driver for Linux. more>>
ASFS is a filesystem driver for the Linux kernel that adds support for the Amiga SmartFileSystem. ASFS filesystem driver supports both read and write, however, write support is in an early beta stage.
ASFS - Amiga Smart File System - Linux implementation
Version 1.0beta8 in "read-only mode" should be considered as the lasted stable version of ASFS driver.
It is available for Linux kernel version 2.6.x.
From version 1.0 there is also full write support. Use it with care. It is in EXPERIMETAL stage and COULD be DANGEROUS.
Remember! YOU USE THIS DRIVER AT YOUR OWN RISK. Read included docs for
more details.
Enhancements:
- The code was updated to match changes in the VFS of Linux kernel 2.6.19.
<<lessASFS - Amiga Smart File System - Linux implementation
Version 1.0beta8 in "read-only mode" should be considered as the lasted stable version of ASFS driver.
It is available for Linux kernel version 2.6.x.
From version 1.0 there is also full write support. Use it with care. It is in EXPERIMETAL stage and COULD be DANGEROUS.
Remember! YOU USE THIS DRIVER AT YOUR OWN RISK. Read included docs for
more details.
Enhancements:
- The code was updated to match changes in the VFS of Linux kernel 2.6.19.
Download (0.006MB)
Added: 2006-12-04 License: GPL (GNU General Public License) Price:
1056 downloads
FileCentral 0.0.8
Filecentral is a filesystem browser and file manager. more>>
Filecentral is a filesystem browser and file manager. It uses the navigational model of the OSX finder, but tries to integrate into the GNOME Desktop. It uses gnome-vfs and is thus also able to manage remote files.
Filecentral is programmed in C, the best programming language to shoot yourself in the foot.
<<lessFilecentral is programmed in C, the best programming language to shoot yourself in the foot.
Download (0.14MB)
Added: 2005-08-05 License: GPL (GNU General Public License) Price:
1540 downloads
SMBD Audit 0.2 RC1
SMBD Audit application is a set of VFS audit module for Samba 3 and web frontend to view and search samba audit logs. more>>
SMBD Audit application is a set of VFS audit module for Samba 3 and web frontend to view and search samba audit logs.
Module stores logs directly into MySQL database with libmysqlclient.
You can search database by Login, Address, Share, Action, Log Message(specify filename or directory name), From and To Date.
Here is a very short list of what SMBD Audit package includes, and what it does.
- a VFS audit module, to provide logging to MySQL database
- a web front end to view and search logs.
<<lessModule stores logs directly into MySQL database with libmysqlclient.
You can search database by Login, Address, Share, Action, Log Message(specify filename or directory name), From and To Date.
Here is a very short list of what SMBD Audit package includes, and what it does.
- a VFS audit module, to provide logging to MySQL database
- a web front end to view and search logs.
Download (0.35MB)
Added: 2006-01-26 License: GPL (GNU General Public License) Price:
1374 downloads
Aethera 1.2.1
Aethera is a pim application that handles all kinds of personal information. more>>
Aethera is a pim application, i.e. it handles all kinds of personal information: email, contacts, notes, tasks, todos, journals. It has various communication features regarding: send/receive email, send/receive task requests and appointment requests via email. It can help you to know quickly the worlds news and weather.
Aethera is a new cutting edge communications and personal data management software written with Qt and deployed for Linux, Windows and Macintosh. By PIM we mean Personal Information Manager, by PDR we mean Personal Data Repository, the rest should be obvious.
Aethera supports all the standard messaging protocols such as POP and IMAP with full synchronization capability as well as support for multiple identities. All the features you would expect to find in an industrial strength email system are part of Aethera. In addition there is a personal calendar and schedule, as well as "sticky" notes, "To Do" lists, an address book, groupware compatibility via Kolab, and optional plug ins the extend the idea of collaboration beyond the bounds of typical groupware with instant messaging, whiteboarding and voice over IP (VoIP). The combination of Aethera with Kolab provides you with a very powerful combination that can realistically replace Outlook/Exchange and in some cases Lotus Notes, for only the price of the hardware to install it on. There are no per server costs or per user costs unless you want the optional plug ins, which are all priced at trivial amounts. Since Aethera runs on virtually any operating system you are likely to use, it doesnt require that you make any changes on the desktop.
The Groupware portion of Aethera can be as simple as sharing your personal schedule to arrange meetings and discover scheduling conflicts, sharing your contacts or even your ideas using notes and images. There is support for Kolab Groupware server, a good solution for people who need synchronization and instant access to information. Aethera is also a GPL, this means you get the source code with the application to do whatever you want. We dont charge for Aethera, however we do have the optional plug ins that we charge for, but you are free to create your own plug ins for your own use or to give away to other people and companies.
We are available to build plug ins or add functionality on a time and materials basis if you wish to have specific customizations in a timely fashion, just contact us at . Aethera uses advanced functionality that we developed that allows you to add new plug ins with relative ease across operating systems, making Aethera truly unique and extensible. Our use of Qt from Trolltech gives us the ability to easily make the user interface multi-platform, and we take care of the rest.
Aethera is well suited, and designed, around the idea of collaboration and information management. So lets talk about whats there now, what wed like to do in the future and what is possible to do.
Through our creative use of Jabber weve been able to integrate not only an instant messaging client, but also the worlds only collaborative whiteboarding application built on top of Jabber. This allows you to rapidly communicate with friends and co-workers anywhere in the world and be able to easily share visual ideas. Our Jabber client is also the only one currently available that supports file transfers between clients with no problems with firewalls. Now an extension of this idea would be to allow you to share any object within Aethera to people you are Jabbering with, for example: Say you are in a one on one chat, or better yet, a MUC (Multi User Chat in Jabber terms) and you drop a Contact from Aethera in to the chat, everyone can have that automatically load in to their contact list, or maybe it is a file, a picture, etc. This is all theoretically possible today with the technology that exists in the framework, it just hasnt been written yet.
Weve added what we call the aethera-command extension. This allows you to essentially script Aethera externally. So for example on Windows, you could have a VBA script that was part of MS Excel that could populate your Address Book with the data out of Excel. Some of the things were talking about here can be solved with aethera-command, the possibilities are only limited by your imagination.
Another useful tool that could be done in a relatively short amount of time would be a CRM module, this is "Customer Resource Management" and is invaluable for sales people. If youve ever seen ACT! or Goldmine, this is what we are talking about, but far more flexible and better integration between all the modules. The design is done, but resources are thin to do everything we want.
Aethera could also be enabled to create discussion forums and knowledge bases within the enterprise or across the Internet. Aethera will also supports sophisticated work flow management through a graphical interface that allows you describe the flow of work through a process. Perhaps a document needs to be reviewed by, and signed off by several different people in a particular sequence. When that is done, then a copy is faxed or printed or emailed to another recipient at another location, and the task is then flagged as completed and notification is sent to the task manager. A web interface is also available so that you are never out of touch with your information. Eventually Aethera will integrate with our Project Management software as a fully integrated solution.
The PDR portion of Aethera will allow for new, and to our knowledge, completely unique features for managing your personal information. How many places do you have to organize information? You have your disk drive where you create directory structures and save information. You have web pages that you save in the bookmarks of your web browser, and you have your email. How often have you saved a bookmark only to have the link go away later, or you cant remember why you saved it? How often have you saved an email, and then cant remember why? Two very exciting pieces of Aethera address these issues for you.
Weve been designing a component on Linux that will allow any enabled application to save its information into the Aethera virtual file system. This one step allows you, but does not require you, to save any and all files into a single hierarchy that is easily organized, indexed and searchable. You will even be able to use Aethera to save your bookmarks through Konqueror and have multiple sorting criteria so that you can easily find and use them. A plug in for Konqueror will also allow you to save whole, or in part, web pages into the Aethera VFS instead of just saving the URL. This becomes even more useful with the next piece. It is conceivable to provide the same level of functionality through Internet Explorer on Windows and Safari on OS X.
The companion piece is the Annotation Tool. This component allows the user to add any personal notes to any piece of information being saved. So now you can save off that web page and make some notes on it when you save it as well as maintain the original URL information if needed. You can now file away your emails into folders and put your own notes and thoughts with them, ensuring that you will always know what your various correspondence were about in case the thread is lost. Anything that is saved into the VFS will have the ability to be annotated, giving you ultimate control over your personal information.
The VFS can easily be swapped to a SQL compliant database backend, which provides for better data security and more robust searching capability, not to mention better speed as your data repositories grow. You could then use any type of database tool to browse and report from those data structures (provided you have security clearance).
We hope you are starting to see and understand the vision of Aethera, what it can do today, and what it can do tomorrow.
Enhancements:
Whats new:
Groupware (Kolab1, Citadel)
- Aethera can use even empty Shared Folders (Kolab1 compatibility).
- The jabber chat logs can be saved in Notes Shared Folders (Kolab1 compatibility)
General
- Sound support for notifications, you can use the autodetect mode or just choose your player.
- Sound support can be disabled if you want to hear only your music :).
- More translations available (Greek support in progress). The current supported languages are French, German, Russian and Portuguese (BR).
tkJabberPro
- The notification system has been improved and you will get notifications as popup messages, as sounds or as status bar messages depending on the situation.
- Now its more comfortable to know about your new instant messages from your contacts or file transfer status.
- Now it comes with a system tray support (Linux only) which works very well with the new notification system.
- Better support for unicode, so that you can communicate with friends all over the world.
- The management of chat logs has been improved with a search mechanism and with groupware support.
- There is a new search line which let you see only the needed chat logs.
- The groupware support (Kolab1 compatible) helps you to store your chat logs on the server for sharing it with other people or just to have your important data available from different location.
- The chat list view has alternative background color for a better visibility.
- You can send/request authorization when you need. Adding a new contact will manage the authorizations automaticaly. The layout for authorization dialog has been fixed.
Improvements and fixes:
Datebook
- ICAL format support has some fixes.
- The automaticaly saving options works now.
- The sound option for events alarm works now. It is using the new sound support.
- Removing a calendar with Delete key isnt possible anymore.
Addressbook
- VCARD support is reading/importing both VCARD2 and VCARD3 data format and it exports data only in VCARD3 format. In this way more people will be able to import their old contacts in Aethera.
- The support for phone field is fixed (even as a SIP type).
- The Kolab support is better too.
- The contacts view list is using alternative background for a better visibility.
<<lessAethera is a new cutting edge communications and personal data management software written with Qt and deployed for Linux, Windows and Macintosh. By PIM we mean Personal Information Manager, by PDR we mean Personal Data Repository, the rest should be obvious.
Aethera supports all the standard messaging protocols such as POP and IMAP with full synchronization capability as well as support for multiple identities. All the features you would expect to find in an industrial strength email system are part of Aethera. In addition there is a personal calendar and schedule, as well as "sticky" notes, "To Do" lists, an address book, groupware compatibility via Kolab, and optional plug ins the extend the idea of collaboration beyond the bounds of typical groupware with instant messaging, whiteboarding and voice over IP (VoIP). The combination of Aethera with Kolab provides you with a very powerful combination that can realistically replace Outlook/Exchange and in some cases Lotus Notes, for only the price of the hardware to install it on. There are no per server costs or per user costs unless you want the optional plug ins, which are all priced at trivial amounts. Since Aethera runs on virtually any operating system you are likely to use, it doesnt require that you make any changes on the desktop.
The Groupware portion of Aethera can be as simple as sharing your personal schedule to arrange meetings and discover scheduling conflicts, sharing your contacts or even your ideas using notes and images. There is support for Kolab Groupware server, a good solution for people who need synchronization and instant access to information. Aethera is also a GPL, this means you get the source code with the application to do whatever you want. We dont charge for Aethera, however we do have the optional plug ins that we charge for, but you are free to create your own plug ins for your own use or to give away to other people and companies.
We are available to build plug ins or add functionality on a time and materials basis if you wish to have specific customizations in a timely fashion, just contact us at . Aethera uses advanced functionality that we developed that allows you to add new plug ins with relative ease across operating systems, making Aethera truly unique and extensible. Our use of Qt from Trolltech gives us the ability to easily make the user interface multi-platform, and we take care of the rest.
Aethera is well suited, and designed, around the idea of collaboration and information management. So lets talk about whats there now, what wed like to do in the future and what is possible to do.
Through our creative use of Jabber weve been able to integrate not only an instant messaging client, but also the worlds only collaborative whiteboarding application built on top of Jabber. This allows you to rapidly communicate with friends and co-workers anywhere in the world and be able to easily share visual ideas. Our Jabber client is also the only one currently available that supports file transfers between clients with no problems with firewalls. Now an extension of this idea would be to allow you to share any object within Aethera to people you are Jabbering with, for example: Say you are in a one on one chat, or better yet, a MUC (Multi User Chat in Jabber terms) and you drop a Contact from Aethera in to the chat, everyone can have that automatically load in to their contact list, or maybe it is a file, a picture, etc. This is all theoretically possible today with the technology that exists in the framework, it just hasnt been written yet.
Weve added what we call the aethera-command extension. This allows you to essentially script Aethera externally. So for example on Windows, you could have a VBA script that was part of MS Excel that could populate your Address Book with the data out of Excel. Some of the things were talking about here can be solved with aethera-command, the possibilities are only limited by your imagination.
Another useful tool that could be done in a relatively short amount of time would be a CRM module, this is "Customer Resource Management" and is invaluable for sales people. If youve ever seen ACT! or Goldmine, this is what we are talking about, but far more flexible and better integration between all the modules. The design is done, but resources are thin to do everything we want.
Aethera could also be enabled to create discussion forums and knowledge bases within the enterprise or across the Internet. Aethera will also supports sophisticated work flow management through a graphical interface that allows you describe the flow of work through a process. Perhaps a document needs to be reviewed by, and signed off by several different people in a particular sequence. When that is done, then a copy is faxed or printed or emailed to another recipient at another location, and the task is then flagged as completed and notification is sent to the task manager. A web interface is also available so that you are never out of touch with your information. Eventually Aethera will integrate with our Project Management software as a fully integrated solution.
The PDR portion of Aethera will allow for new, and to our knowledge, completely unique features for managing your personal information. How many places do you have to organize information? You have your disk drive where you create directory structures and save information. You have web pages that you save in the bookmarks of your web browser, and you have your email. How often have you saved a bookmark only to have the link go away later, or you cant remember why you saved it? How often have you saved an email, and then cant remember why? Two very exciting pieces of Aethera address these issues for you.
Weve been designing a component on Linux that will allow any enabled application to save its information into the Aethera virtual file system. This one step allows you, but does not require you, to save any and all files into a single hierarchy that is easily organized, indexed and searchable. You will even be able to use Aethera to save your bookmarks through Konqueror and have multiple sorting criteria so that you can easily find and use them. A plug in for Konqueror will also allow you to save whole, or in part, web pages into the Aethera VFS instead of just saving the URL. This becomes even more useful with the next piece. It is conceivable to provide the same level of functionality through Internet Explorer on Windows and Safari on OS X.
The companion piece is the Annotation Tool. This component allows the user to add any personal notes to any piece of information being saved. So now you can save off that web page and make some notes on it when you save it as well as maintain the original URL information if needed. You can now file away your emails into folders and put your own notes and thoughts with them, ensuring that you will always know what your various correspondence were about in case the thread is lost. Anything that is saved into the VFS will have the ability to be annotated, giving you ultimate control over your personal information.
The VFS can easily be swapped to a SQL compliant database backend, which provides for better data security and more robust searching capability, not to mention better speed as your data repositories grow. You could then use any type of database tool to browse and report from those data structures (provided you have security clearance).
We hope you are starting to see and understand the vision of Aethera, what it can do today, and what it can do tomorrow.
Enhancements:
Whats new:
Groupware (Kolab1, Citadel)
- Aethera can use even empty Shared Folders (Kolab1 compatibility).
- The jabber chat logs can be saved in Notes Shared Folders (Kolab1 compatibility)
General
- Sound support for notifications, you can use the autodetect mode or just choose your player.
- Sound support can be disabled if you want to hear only your music :).
- More translations available (Greek support in progress). The current supported languages are French, German, Russian and Portuguese (BR).
tkJabberPro
- The notification system has been improved and you will get notifications as popup messages, as sounds or as status bar messages depending on the situation.
- Now its more comfortable to know about your new instant messages from your contacts or file transfer status.
- Now it comes with a system tray support (Linux only) which works very well with the new notification system.
- Better support for unicode, so that you can communicate with friends all over the world.
- The management of chat logs has been improved with a search mechanism and with groupware support.
- There is a new search line which let you see only the needed chat logs.
- The groupware support (Kolab1 compatible) helps you to store your chat logs on the server for sharing it with other people or just to have your important data available from different location.
- The chat list view has alternative background color for a better visibility.
- You can send/request authorization when you need. Adding a new contact will manage the authorizations automaticaly. The layout for authorization dialog has been fixed.
Improvements and fixes:
Datebook
- ICAL format support has some fixes.
- The automaticaly saving options works now.
- The sound option for events alarm works now. It is using the new sound support.
- Removing a calendar with Delete key isnt possible anymore.
Addressbook
- VCARD support is reading/importing both VCARD2 and VCARD3 data format and it exports data only in VCARD3 format. In this way more people will be able to import their old contacts in Aethera.
- The support for phone field is fixed (even as a SIP type).
- The Kolab support is better too.
- The contacts view list is using alternative background for a better visibility.
Download (7.4MB)
Added: 2005-05-25 License: GPL (GNU General Public License) Price:
1613 downloads
Research Master 1.2c
ResearchMaster has been designed to make working a little easier. more>>
ResearchMaster project has been designed to make working a little easier. Specifically, the application can be either a storage facility for all of your precious, miscellaneous digital information, or for just some of it. The project began as a way for the author to [1] have a centralized library for all the papers and various snippets he collects, and [2] to have some powerful, built-in support for BibTeX, the LaTeX bibliography system ( The LaTeX bibliography system, as described in the Leslie Lamport book. ISBN 0-201-52983-1).
When the application starts up, it creates a virtual filesystem (vfs) from information contained in records. Each record appends itself under at least one folder in the vfs, and the vfs is represented by a tree-widget system of folders and records. The application is divided into folder controls (left) and record controls (right).
Each record is actually a set of three python dictionaries, stored in a flat ascii text file. The three dictionaries correspond to [1] BibTex information corresponding to the record, [2] Meta information (eg. isbn, call number, url, membership) and [3] an endless notes file. When a record is selected from the tree widget, the corresponding three dictionaries are presented in a three-tabbed notebook widget on the right side of the application.
New records are created via a button on the records toolbar. When you create a new record the application pops a filechooser and you are given the opportunity to import a single file. Perhaps the imported file is a pdf copy of a research paper that you dont want to lose. ResearchMaster is a good place to store it. First, the record and the imported file now have each other. Now you can keep a log of your involvement with the file in the notes portion of the record. The Meta portion of the record contains non-BibTex information, such as which folders the record is a member of. The application accesses the records BibTex information whenever the record has membership within the subtree of a particular folder for which a recursive bibliography is being generated.
Heres a typical example: Say you create a folder for some project. Lets say that after six months your folder now has several subtrees of folders and records, all arranged according to the scheme that happened. Now imagine there are twenty records with BibTex information strewn throughout the projects subtree, side-by-side with other records that dont have BibTex information (notes, whatever). By pushing the Create Bibliography button on the left toolbar the application will produce a perfectly formatted BibTex file with all twenty records.
Each record can be made a member of any folder simply by adding the folders path to the membership list in the Meta portion of the record. The tree widget is dynamically constructed by recursively examining a directory tree (corresponding to the folders of the tree-widget) and the membership list contained in each record. This is done so that we only have one physical copy of each record, despite the fact that the record might show up in fifty different places throughout the tree widget.
The file that gets imported with a record can be any file of any format. You can tell ResearchMaster to launch the file as an argument to any external application, based on the filenames suffix (.gif, .avi, .mpg, .mp3). Then, select the record from the tree, push the launch button (on the records toolbar), and voila! The associated application brings up your file. Thats one feature that makes working a little easier.
Enhancements:
- Small correction was needed on line 1140 of ResearchMaster_wxuser.py, where "researchmaster" needed to be "ReseaerchMaster" for preferences initialization.
<<lessWhen the application starts up, it creates a virtual filesystem (vfs) from information contained in records. Each record appends itself under at least one folder in the vfs, and the vfs is represented by a tree-widget system of folders and records. The application is divided into folder controls (left) and record controls (right).
Each record is actually a set of three python dictionaries, stored in a flat ascii text file. The three dictionaries correspond to [1] BibTex information corresponding to the record, [2] Meta information (eg. isbn, call number, url, membership) and [3] an endless notes file. When a record is selected from the tree widget, the corresponding three dictionaries are presented in a three-tabbed notebook widget on the right side of the application.
New records are created via a button on the records toolbar. When you create a new record the application pops a filechooser and you are given the opportunity to import a single file. Perhaps the imported file is a pdf copy of a research paper that you dont want to lose. ResearchMaster is a good place to store it. First, the record and the imported file now have each other. Now you can keep a log of your involvement with the file in the notes portion of the record. The Meta portion of the record contains non-BibTex information, such as which folders the record is a member of. The application accesses the records BibTex information whenever the record has membership within the subtree of a particular folder for which a recursive bibliography is being generated.
Heres a typical example: Say you create a folder for some project. Lets say that after six months your folder now has several subtrees of folders and records, all arranged according to the scheme that happened. Now imagine there are twenty records with BibTex information strewn throughout the projects subtree, side-by-side with other records that dont have BibTex information (notes, whatever). By pushing the Create Bibliography button on the left toolbar the application will produce a perfectly formatted BibTex file with all twenty records.
Each record can be made a member of any folder simply by adding the folders path to the membership list in the Meta portion of the record. The tree widget is dynamically constructed by recursively examining a directory tree (corresponding to the folders of the tree-widget) and the membership list contained in each record. This is done so that we only have one physical copy of each record, despite the fact that the record might show up in fifty different places throughout the tree widget.
The file that gets imported with a record can be any file of any format. You can tell ResearchMaster to launch the file as an argument to any external application, based on the filenames suffix (.gif, .avi, .mpg, .mp3). Then, select the record from the tree, push the launch button (on the records toolbar), and voila! The associated application brings up your file. Thats one feature that makes working a little easier.
Enhancements:
- Small correction was needed on line 1140 of ResearchMaster_wxuser.py, where "researchmaster" needed to be "ReseaerchMaster" for preferences initialization.
Download (2.1MB)
Added: 2006-11-29 License: GPL (GNU General Public License) Price:
1061 downloads
Gnaural 0.4.20070301
Gnaural is a multi-platform programmable binaural-beat generator. more>>
Gnaural is a multi-platform programmable binaural-beat generator, implementing the principles described in October 1973 Scientific American, Gerald Oster, "Auditory Beats in the Brain."
There has been considerable research done on the subject since that publication, and Gnaurals Windows-based predecessor, WinAural, has been used as the audio stimulus in at least one published study, "The Induced Rhythmic Oscillations of Neural Activity in the Human Brain", D. Cvetkovic, D. Djuwari, I. Cosic (Australia), from Proceeding (417) Biomedical Engineering - 2004.
The central finding of Osters article: brain activity can be entrained to the auditory beat frequencies created when each ear is presented simultaneously with tones of slightly offset in frequency. My interest has been exploring how this effect (known as "frequency following response" or "brainwave entrainment") can be used to explore mental states, ranging from profoundly meditative to highly alert.
What are auditory binaural beats?
In 1839, German experimenter Heinrich Wilhelm Dove discovered that playing two tones simultaneously, one in to each ear, induced the perception of a "beat frequency" when the tones were of slightly differing frequency (generally less than 100 Hz apart).
While an acoustic mixing of the two tones will also produce a beat frequency, what is notable about auditory binaural beats is that there is no acoustic mixing of the tones: the beats exist solely within the auditory system. Some researchers believe that they are an artifact of the "neural wiring" used to spatially determine the origins of sounds in our environment.
Gerald Osters breakthrough in 1973 was to observe that the neural processing associated with binaural beats can induce an overall entrainment of brainwave activity (essentially, an oscillation between the two hemispheres in sync with the beat frequency). The neurology of this phenomenon is, according to Oster, tied to the contralateral integration of auditory input taking place in the superior olivary nucleus in the brainstem.
My main interest in the principle has been the possibility that brainwave entrainment can be used to target specific mental states. Gnaural has a long lineage, starting with a DOS program in the mid 1990s, progressing to WinAural for Windows and (in the hope a making a cross-platform solution) BrainJav for Java, and finally the truly cross-platform solution in Gnaural. In over a decade of experience with the technique, I have mainly found it useful for slowing-down brain activity. In that capacity, it has served me in areas ranging from stress reduction, sleep make-up, and particularly as a sort of "poor mans meditation", requiring almost no effort to achieve states of mind that I usually have found rather hard to achieve with real meditation.
But these are strictly my observations, and I make no guarantees about what the technique can do for anyone else. Some of the more unusual applications Ive heard about for my software include sustaining a heightened mental focus for online tournament gaming, and enhancing flotation-tank and related sensory deprivation environments. Many people also apparently use the technique to study more effectively.
One of the stranger facts regarding binaural beats is their seeming ability to be equally-at-home in the laboratory setting as in "grass roots" contexts (such as alternative medicine and the New Age phenomenon). That there is a grass-roots enthusiasm (easily demonstrated by googling binaural beats) is probably related to the sense of promise inherent in an easy-to-implement technique offering the possibility of direct influence of brain behavior. But from a scientific standpoint, there is a big gap between claims (of what binaural beats can do) and corroboration (by scientific method), which has led to a sense in many that the actual subject of binaural beats is "controversial." But this is an irrational response, given that the actual scientific/laboratory basis of binaural beats has remained an established part of the scientific literature for over 30 years.
One of my goals in writing Gnaural was to implement the binaural beat principle within the bounds of my understanding of the established scientific facts regarding the subject. To some extent, this has meant leaving-out many of the "bells and whistles" prevailent in other implementations. That my software has been used for at least one published "hard-science" study suggests that it has been somewhat successful. However, I also hope that Gnaural proves useful for people who wish to explore subjective areas unfettered by scientific rigor. In a subject dealing with matters of the mind, I see both sides -- "grass-roots empiricism" and "scientific empiricism" -- as being complementary halves of a complete investigation of the possibilities, and ultimately, Id hope to see the two sides of our culture be catalysts for each other, rather than inhibited by a mutual antagonism.
<<lessThere has been considerable research done on the subject since that publication, and Gnaurals Windows-based predecessor, WinAural, has been used as the audio stimulus in at least one published study, "The Induced Rhythmic Oscillations of Neural Activity in the Human Brain", D. Cvetkovic, D. Djuwari, I. Cosic (Australia), from Proceeding (417) Biomedical Engineering - 2004.
The central finding of Osters article: brain activity can be entrained to the auditory beat frequencies created when each ear is presented simultaneously with tones of slightly offset in frequency. My interest has been exploring how this effect (known as "frequency following response" or "brainwave entrainment") can be used to explore mental states, ranging from profoundly meditative to highly alert.
What are auditory binaural beats?
In 1839, German experimenter Heinrich Wilhelm Dove discovered that playing two tones simultaneously, one in to each ear, induced the perception of a "beat frequency" when the tones were of slightly differing frequency (generally less than 100 Hz apart).
While an acoustic mixing of the two tones will also produce a beat frequency, what is notable about auditory binaural beats is that there is no acoustic mixing of the tones: the beats exist solely within the auditory system. Some researchers believe that they are an artifact of the "neural wiring" used to spatially determine the origins of sounds in our environment.
Gerald Osters breakthrough in 1973 was to observe that the neural processing associated with binaural beats can induce an overall entrainment of brainwave activity (essentially, an oscillation between the two hemispheres in sync with the beat frequency). The neurology of this phenomenon is, according to Oster, tied to the contralateral integration of auditory input taking place in the superior olivary nucleus in the brainstem.
My main interest in the principle has been the possibility that brainwave entrainment can be used to target specific mental states. Gnaural has a long lineage, starting with a DOS program in the mid 1990s, progressing to WinAural for Windows and (in the hope a making a cross-platform solution) BrainJav for Java, and finally the truly cross-platform solution in Gnaural. In over a decade of experience with the technique, I have mainly found it useful for slowing-down brain activity. In that capacity, it has served me in areas ranging from stress reduction, sleep make-up, and particularly as a sort of "poor mans meditation", requiring almost no effort to achieve states of mind that I usually have found rather hard to achieve with real meditation.
But these are strictly my observations, and I make no guarantees about what the technique can do for anyone else. Some of the more unusual applications Ive heard about for my software include sustaining a heightened mental focus for online tournament gaming, and enhancing flotation-tank and related sensory deprivation environments. Many people also apparently use the technique to study more effectively.
One of the stranger facts regarding binaural beats is their seeming ability to be equally-at-home in the laboratory setting as in "grass roots" contexts (such as alternative medicine and the New Age phenomenon). That there is a grass-roots enthusiasm (easily demonstrated by googling binaural beats) is probably related to the sense of promise inherent in an easy-to-implement technique offering the possibility of direct influence of brain behavior. But from a scientific standpoint, there is a big gap between claims (of what binaural beats can do) and corroboration (by scientific method), which has led to a sense in many that the actual subject of binaural beats is "controversial." But this is an irrational response, given that the actual scientific/laboratory basis of binaural beats has remained an established part of the scientific literature for over 30 years.
One of my goals in writing Gnaural was to implement the binaural beat principle within the bounds of my understanding of the established scientific facts regarding the subject. To some extent, this has meant leaving-out many of the "bells and whistles" prevailent in other implementations. That my software has been used for at least one published "hard-science" study suggests that it has been somewhat successful. However, I also hope that Gnaural proves useful for people who wish to explore subjective areas unfettered by scientific rigor. In a subject dealing with matters of the mind, I see both sides -- "grass-roots empiricism" and "scientific empiricism" -- as being complementary halves of a complete investigation of the possibilities, and ultimately, Id hope to see the two sides of our culture be catalysts for each other, rather than inhibited by a mutual antagonism.
Download (0.12MB)
Added: 2007-04-25 License: GPL (GNU General Public License) Price:
922 downloads
gvfsfind 0.1.4
gvfsfind searches for files in a directory hierarchy. more>>
gvfsfind searches for files in a directory hierarchy. This project is inspired by the Unix find utility, but operates on URLs using gnome-vfs instead of the local file system.
For example, gvfsfind.py ftp://video.foo.org --type d --print prints all directories on the FTP server. gvfsfind.py ssh://skipper/srv/movie --type f -name ".*.vob" --exec "gnomevfs-copy %u ." copies all files ending with .vob from the host skippers directory /srv/movie, including its sub-directories.
Enhancements:
- A makefile has been added to simplify release.
- This release is packaged as a tar.gz archive.
- Support has been added for filenames including #.
- Support for use as a Python module has been added.
<<lessFor example, gvfsfind.py ftp://video.foo.org --type d --print prints all directories on the FTP server. gvfsfind.py ssh://skipper/srv/movie --type f -name ".*.vob" --exec "gnomevfs-copy %u ." copies all files ending with .vob from the host skippers directory /srv/movie, including its sub-directories.
Enhancements:
- A makefile has been added to simplify release.
- This release is packaged as a tar.gz archive.
- Support has been added for filenames including #.
- Support for use as a Python module has been added.
Download (0.008MB)
Added: 2007-08-13 License: GPL (GNU General Public License) Price:
803 downloads
Valgrind 3.2.3
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. more>>
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. With the tools that come with Valgrind, you can automatically detect many memory management and threading bugs, avoiding hours of frustrating bug-hunting, making your programs more stable. You can also perform detailed profiling, to speed up and reduce memory use of your programs.
Valgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
<<lessValgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
Download (3.9MB)
Added: 2007-05-02 License: GPL (GNU General Public License) Price:
909 downloads
ferrisfuse 0.1.0
ferrisfuse is a FUSE module for mounting libferris filesystems through the Linux kernel. more>>
ferrisfuse is a FUSE module for mounting libferris filesystems through the Linux kernel.
About libferris
In non technical terms libferris makes the file system and other hierarchical storage systems easier to use. For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. The FAQ contains entries related to installation, configuration and the usage of libferris.
As of July 2005 libferris can mount many interesting things ranging from a filesystem from your local Linux kernel through to LDAP, Evolution, PostgreSQL, dbXML, and RDF. To get an impression of the current capabilities of libferris mounting see the plugins/context directory of the lastest release. New things to mount are always being added.
Other than mounting things as a filesystem, the other core concept of libferris is extraction of interesting metadata from your libferris filesystems. This means that simple things like width and height of an image file become first class metadata citizens along with a files size and modification time. The limits on what metadata is available extend far beyond image metadata to include XMP, EXIF, music ID tags, geospatial tags, rpm metadata, SELinux integration, partially ordered emblem categories and arbitrary personal RDF stores of metadata.
Though some consider the last point of purely academic interest the end result is that you can add metadata to *all* libferris objects even those you only have read access too, for example, you can attach emblems to this website just as you would a normal file. The metadata interface gives all metadata from file size to digital signature status information equal standing. As such you can sort a directory by any metadata just as easily as you would ls -Sh to sort by file size. Sorting on multiple metadata values is also supported in libferris, you can easily sort your files by mimetype, then image width, then modification time with all three pieces of metadata contributing to the final directory ordering.
Late in 2004 extensive support for both fulltext and metadata indexing was added to libferris. This means you can supply queries against the contents or metadata of any libferris accessable object and have the results returned as a virtual filesystem. With the above mentioned metadata available for searching, finding your files can be done in many different ways instead of being forced to generate fixed directory trees using part of a file collections semantics as directory names. The metadata and virtual filesystem play together here allowing you to geospatially tag both your digital pictures, trip plans, and relevent websites and recall these objects in a single virtual directory no matter what their path or URL may be.
There is also a Samba VFS module which allows you to expose a libferris filesystem as a Samba share. Kfsmd uses the inotify kernel interface to allow libferris to watch changes made to your kernel filesystem by non libferris applications and update its indexes appropriately. Ferriscreate provides a command line and GTK+2 application for creating "new files" with libferris. With this you can create a new db4 database, dbXML database or fulltext index just as easily as you can make a regular file.
The ego filemanager is a GTK+2 interface built on top of libferris. It provides GTK treeview , gevas/edje and gecko based interfaces and makes extensive use of libferris clients to provide its functionality.
If you have a project you wish to use libferris with and want extensions made dont hesitate to contact one of the developers to arrange consulting.
For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. At the moment libferris is a shared object that each application can dynamically link to in order to see the file system through a nicer abstraction.
New additions to the XML module allow for data to be converted from one format to another by the VFS for you. To copy data to an XML file:
fcreate --create-type=xml --rdn=2.xml root-element=fred /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.xml/fred
To copy data to a db4 file
fcreate --create-type=db4 --rdn=2.db /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.db
Ferris presents a C++ interface that makes heavy use of the STL and IOStreams. Currently ferris has two main internal abstractions: Context and Attribute. A context is much like a traditional file or directory in a file system, the major differences being that a context can have both byte content (like a file) and subcontexts (like a directory). An attribute is a chunk of metadata about a context. Contexts can have many attributes.
Some attributes may be large, for example a base 64 encoded version of the contexts content (133% context size). On the other hand an attribute can be small, for example the file size is exposed as an attribute.
Access to all contexts and attributes is performed by first requesting either an IStream or IOStream for that context or attribute. In this way the same context/attribute can be open many times at the same time, just like normal kernel based IO.
Ferris uses Loki from "Modern C++ Design" by Alexandrescu. Most objects use automatic garbage collection based on the SmartPtr template class from Loki. Where possible objects in ferris use a FerrisRefCounted policy to provide COM like intrusive reference counting. This style is used for Context, Attribute and special wrappers of IOStreams that are provided. IOStreams are wrapped to provide a more flexible API than could be offered using references to IOStreams.
There are also new stream classes provided, for example NullStream and LimitingStream. Templates are provided to make SmartPtrs to standard IOStreams act just like the underlying stream would, for example, one can have SmartPtr ss; ss >> stringObj; and does not have to dereference the SmartPtr to use standard IOStreams extractors or inserters.
Ferris uses GModule from glib2 to dynamically load both context and attribute classes at run-time. This way resources are conserved until they are needed. The native file system context is statically linked to ferris at present. When loading either contexts or attribute classes ferris uses a double dispatch factory method. Put simply this means that for each plugin there are two libraries, one that tells ferris if the main one really needs to be loaded or not. Using this scheme ferris can load all the meta factory classes at any time and use these very small meta factories to check if the main factory can create objects that are going to be useful.
This scheme is of great use for attribute classes. Attribute classes take a context and can "generate" attributes from the context. An example of this sort of class would be a MD5 or Base64 attribute. Both can be generated from the base context. More interesting attributes are PCM audio and RGBA-32bpp image data. By using the double dispatch factory ferris can handle a great deal of attribute generators and load them on demand.
Ferris currently can decode mp3, read id3 tags, decode many image formats and break some animation formats into frames. This makes ferris a solid starting point for multimedia applications.
Ferris will automatically mount sub file systems for you. Examples of a sub file system include a Berkeley database or XML file. For example it is possible to read a context such as /tmp/myxml.xml/mynode. Using this automatic mounting the differences between storage formats effectively disappear. To a ferris enabled application loading data from a native disk file, a Berkeley database, and XML file, or mbox file appear to be the same. This allows the user of the application to choose the correct storage for the data at hand.
It is planned to move to a microkernel architecture in Version 2.1 of ferris. I choose 2.1 so that ferris does not fall into version 2 syndrome.
Enhancements:
- Many changes were made to better support rsync(1).
- Extended Attribute support was greatly improved.
- write() now also updates mtime.
<<lessAbout libferris
In non technical terms libferris makes the file system and other hierarchical storage systems easier to use. For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. The FAQ contains entries related to installation, configuration and the usage of libferris.
As of July 2005 libferris can mount many interesting things ranging from a filesystem from your local Linux kernel through to LDAP, Evolution, PostgreSQL, dbXML, and RDF. To get an impression of the current capabilities of libferris mounting see the plugins/context directory of the lastest release. New things to mount are always being added.
Other than mounting things as a filesystem, the other core concept of libferris is extraction of interesting metadata from your libferris filesystems. This means that simple things like width and height of an image file become first class metadata citizens along with a files size and modification time. The limits on what metadata is available extend far beyond image metadata to include XMP, EXIF, music ID tags, geospatial tags, rpm metadata, SELinux integration, partially ordered emblem categories and arbitrary personal RDF stores of metadata.
Though some consider the last point of purely academic interest the end result is that you can add metadata to *all* libferris objects even those you only have read access too, for example, you can attach emblems to this website just as you would a normal file. The metadata interface gives all metadata from file size to digital signature status information equal standing. As such you can sort a directory by any metadata just as easily as you would ls -Sh to sort by file size. Sorting on multiple metadata values is also supported in libferris, you can easily sort your files by mimetype, then image width, then modification time with all three pieces of metadata contributing to the final directory ordering.
Late in 2004 extensive support for both fulltext and metadata indexing was added to libferris. This means you can supply queries against the contents or metadata of any libferris accessable object and have the results returned as a virtual filesystem. With the above mentioned metadata available for searching, finding your files can be done in many different ways instead of being forced to generate fixed directory trees using part of a file collections semantics as directory names. The metadata and virtual filesystem play together here allowing you to geospatially tag both your digital pictures, trip plans, and relevent websites and recall these objects in a single virtual directory no matter what their path or URL may be.
There is also a Samba VFS module which allows you to expose a libferris filesystem as a Samba share. Kfsmd uses the inotify kernel interface to allow libferris to watch changes made to your kernel filesystem by non libferris applications and update its indexes appropriately. Ferriscreate provides a command line and GTK+2 application for creating "new files" with libferris. With this you can create a new db4 database, dbXML database or fulltext index just as easily as you can make a regular file.
The ego filemanager is a GTK+2 interface built on top of libferris. It provides GTK treeview , gevas/edje and gecko based interfaces and makes extensive use of libferris clients to provide its functionality.
If you have a project you wish to use libferris with and want extensions made dont hesitate to contact one of the developers to arrange consulting.
For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. At the moment libferris is a shared object that each application can dynamically link to in order to see the file system through a nicer abstraction.
New additions to the XML module allow for data to be converted from one format to another by the VFS for you. To copy data to an XML file:
fcreate --create-type=xml --rdn=2.xml root-element=fred /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.xml/fred
To copy data to a db4 file
fcreate --create-type=db4 --rdn=2.db /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.db
Ferris presents a C++ interface that makes heavy use of the STL and IOStreams. Currently ferris has two main internal abstractions: Context and Attribute. A context is much like a traditional file or directory in a file system, the major differences being that a context can have both byte content (like a file) and subcontexts (like a directory). An attribute is a chunk of metadata about a context. Contexts can have many attributes.
Some attributes may be large, for example a base 64 encoded version of the contexts content (133% context size). On the other hand an attribute can be small, for example the file size is exposed as an attribute.
Access to all contexts and attributes is performed by first requesting either an IStream or IOStream for that context or attribute. In this way the same context/attribute can be open many times at the same time, just like normal kernel based IO.
Ferris uses Loki from "Modern C++ Design" by Alexandrescu. Most objects use automatic garbage collection based on the SmartPtr template class from Loki. Where possible objects in ferris use a FerrisRefCounted policy to provide COM like intrusive reference counting. This style is used for Context, Attribute and special wrappers of IOStreams that are provided. IOStreams are wrapped to provide a more flexible API than could be offered using references to IOStreams.
There are also new stream classes provided, for example NullStream and LimitingStream. Templates are provided to make SmartPtrs to standard IOStreams act just like the underlying stream would, for example, one can have SmartPtr ss; ss >> stringObj; and does not have to dereference the SmartPtr to use standard IOStreams extractors or inserters.
Ferris uses GModule from glib2 to dynamically load both context and attribute classes at run-time. This way resources are conserved until they are needed. The native file system context is statically linked to ferris at present. When loading either contexts or attribute classes ferris uses a double dispatch factory method. Put simply this means that for each plugin there are two libraries, one that tells ferris if the main one really needs to be loaded or not. Using this scheme ferris can load all the meta factory classes at any time and use these very small meta factories to check if the main factory can create objects that are going to be useful.
This scheme is of great use for attribute classes. Attribute classes take a context and can "generate" attributes from the context. An example of this sort of class would be a MD5 or Base64 attribute. Both can be generated from the base context. More interesting attributes are PCM audio and RGBA-32bpp image data. By using the double dispatch factory ferris can handle a great deal of attribute generators and load them on demand.
Ferris currently can decode mp3, read id3 tags, decode many image formats and break some animation formats into frames. This makes ferris a solid starting point for multimedia applications.
Ferris will automatically mount sub file systems for you. Examples of a sub file system include a Berkeley database or XML file. For example it is possible to read a context such as /tmp/myxml.xml/mynode. Using this automatic mounting the differences between storage formats effectively disappear. To a ferris enabled application loading data from a native disk file, a Berkeley database, and XML file, or mbox file appear to be the same. This allows the user of the application to choose the correct storage for the data at hand.
It is planned to move to a microkernel architecture in Version 2.1 of ferris. I choose 2.1 so that ferris does not fall into version 2 syndrome.
Enhancements:
- Many changes were made to better support rsync(1).
- Extended Attribute support was greatly improved.
- write() now also updates mtime.
Download (0.27MB)
Added: 2007-06-13 License: GPL (GNU General Public License) Price:
866 downloads
Gnome2::VFS 1.061
Gnome2::VFS is a Perl interface to the 2.x series of the GNOME VFS library. more>>
Gnome2::VFS is a Perl interface to the 2.x series of the GNOME VFS library.
SYNOPSIS
use Gnome2::VFS;
sub die_already {
my ($action) = @_;
die("An error occured while $action.n");
}
die_already("initializing GNOME VFS") unless (Gnome2::VFS -> init());
my $source = "http://www.perldoc.com/about.html";
my ($result, $handle, $info);
# Open a connection to Perldoc.
($result, $handle) = Gnome2::VFS -> open($source, "read");
die_already("opening connection to $source")
unless ($result eq "ok");
# Get the file information.
($result, $info) = $handle -> get_file_info("default");
die_already("retrieving information about $source")
unless ($result eq "ok");
# Read the content.
my $bytes = $info -> { size };
my $bytes_read = 0;
my $buffer = "";
do {
my ($tmp_buffer, $tmp_bytes_read);
($result, $tmp_bytes_read, $tmp_buffer) =
$handle -> read($bytes - $bytes_read);
$buffer .= $tmp_buffer;
$bytes_read += $tmp_bytes_read;
} while ($result eq "ok" and $bytes_read < $bytes);
die_already("reading $bytes bytes from $source")
unless ($result eq "ok" && $bytes_read == $bytes);
# Close the connection.
$result = $handle -> close();
die_already("closing connection to $source")
unless ($result eq "ok");
# Create and open the target.
my $target = "/tmp/" . $info -> { name };
my $uri = Gnome2::VFS::URI -> new($target);
($result, $handle) = $uri -> create("write", 1, 0644);
die_already("creating $target") unless ($result eq "ok");
# Write to it.
my $bytes_written;
($result, $bytes_written) = $handle -> write($buffer, $bytes);
die_already("writing $bytes bytes to $target")
unless ($result eq "ok" && $bytes_written == $bytes);
# Close the target.
$result = $handle -> close();
die_already("closing $target") unless ($result eq "ok");
Gnome2::VFS -> shutdown();
<<lessSYNOPSIS
use Gnome2::VFS;
sub die_already {
my ($action) = @_;
die("An error occured while $action.n");
}
die_already("initializing GNOME VFS") unless (Gnome2::VFS -> init());
my $source = "http://www.perldoc.com/about.html";
my ($result, $handle, $info);
# Open a connection to Perldoc.
($result, $handle) = Gnome2::VFS -> open($source, "read");
die_already("opening connection to $source")
unless ($result eq "ok");
# Get the file information.
($result, $info) = $handle -> get_file_info("default");
die_already("retrieving information about $source")
unless ($result eq "ok");
# Read the content.
my $bytes = $info -> { size };
my $bytes_read = 0;
my $buffer = "";
do {
my ($tmp_buffer, $tmp_bytes_read);
($result, $tmp_bytes_read, $tmp_buffer) =
$handle -> read($bytes - $bytes_read);
$buffer .= $tmp_buffer;
$bytes_read += $tmp_bytes_read;
} while ($result eq "ok" and $bytes_read < $bytes);
die_already("reading $bytes bytes from $source")
unless ($result eq "ok" && $bytes_read == $bytes);
# Close the connection.
$result = $handle -> close();
die_already("closing connection to $source")
unless ($result eq "ok");
# Create and open the target.
my $target = "/tmp/" . $info -> { name };
my $uri = Gnome2::VFS::URI -> new($target);
($result, $handle) = $uri -> create("write", 1, 0644);
die_already("creating $target") unless ($result eq "ok");
# Write to it.
my $bytes_written;
($result, $bytes_written) = $handle -> write($buffer, $bytes);
die_already("writing $bytes bytes to $target")
unless ($result eq "ok" && $bytes_written == $bytes);
# Close the target.
$result = $handle -> close();
die_already("closing $target") unless ($result eq "ok");
Gnome2::VFS -> shutdown();
Download (0.057MB)
Added: 2007-04-27 License: Perl Artistic License Price:
910 downloads
GNU CD Input and Control Library 0.78.2
The GNU Compact Disc Input and Control library encapsulates CD-ROM reading and control for applications wishing to be oblivious. more>>
GNU CD Input and Control Library (libcdio) encapsulates CD-ROM reading and control. The libcdio package contains a library which encapsulates CD-ROM reading and control. Applications wishing to be oblivious of the OS- and device-dependent properties of a CD-ROM can use this library.
Some support for on-disk CD-image types like CDRWINs BIN/CUE format, cdrdaos TOC format, and Neros NRG format is available. Therefore, applications that use this library also have the ability to read on-disk CD images as though they were CDs.
A library for working with ISO-9660 filesystems (libiso9660) is included. A generic interface for issuing MMC (multimedia commands) is also part of the libcdio library.
The cdparanoia library and cdparanoia command are included making this the only single-source cdparanoia that works on FreeBSD, cygwin, Solaris, BSDI as well as GNU/Linux.
Some uses of the library:
- Video CD authoring and ripping tools VCDImager
- VCD and/or CD-DA plugins for media players:
xine
videolans vlc.
gmerlin.
mplayerxp.
- kiso, a KDE GUI for creating, extracting and editing ISO 9660 images
- a Samba vfs module that that allows exporting a CD without mounting it
Utility programs in the libcdio package are:
cd-info
a program which displays CD information: number of tracks, CD-format and if possible basic information about the format. If libcddb is available, the cd-info program will display CDDB matches on CD-DA discs. And if a new enough version of libvcdinfo is available (from the vcdimager project), then cd-info shows basic VCD information.
cd-drive
a program which decribes CD-ROM/DVD drive characteristics
cd-paranoia
a program for extracting audio from a CD in a jitter- and error-tolerant way.
cd-read
a program for performing low-level block reading of a CD or CD image
cdda-player
a curses program using the audio controls to play a CD-DA through the audio output port.
iso-info
a program for displaying ISO-9660 information from an ISO-9660 image
iso-read
a program for extracting files from an ISO-9660 image.
Enhancements:
- A minor compilation problem was fixed.
<<lessSome support for on-disk CD-image types like CDRWINs BIN/CUE format, cdrdaos TOC format, and Neros NRG format is available. Therefore, applications that use this library also have the ability to read on-disk CD images as though they were CDs.
A library for working with ISO-9660 filesystems (libiso9660) is included. A generic interface for issuing MMC (multimedia commands) is also part of the libcdio library.
The cdparanoia library and cdparanoia command are included making this the only single-source cdparanoia that works on FreeBSD, cygwin, Solaris, BSDI as well as GNU/Linux.
Some uses of the library:
- Video CD authoring and ripping tools VCDImager
- VCD and/or CD-DA plugins for media players:
xine
videolans vlc.
gmerlin.
mplayerxp.
- kiso, a KDE GUI for creating, extracting and editing ISO 9660 images
- a Samba vfs module that that allows exporting a CD without mounting it
Utility programs in the libcdio package are:
cd-info
a program which displays CD information: number of tracks, CD-format and if possible basic information about the format. If libcddb is available, the cd-info program will display CDDB matches on CD-DA discs. And if a new enough version of libvcdinfo is available (from the vcdimager project), then cd-info shows basic VCD information.
cd-drive
a program which decribes CD-ROM/DVD drive characteristics
cd-paranoia
a program for extracting audio from a CD in a jitter- and error-tolerant way.
cd-read
a program for performing low-level block reading of a CD or CD image
cdda-player
a curses program using the audio controls to play a CD-DA through the audio output port.
iso-info
a program for displaying ISO-9660 information from an ISO-9660 image
iso-read
a program for extracting files from an ISO-9660 image.
Enhancements:
- A minor compilation problem was fixed.
Download (1.7MB)
Added: 2007-03-22 License: GPL (GNU General Public License) Price:
949 downloads
FlightGear 0.9.10
FlightGear is a free flight simulator project. more>>
The FlightGear flight simulator project is an open-source, multi-platform, cooperative flight simulator development project. Source code for the entire project is available and licensed under the GNU General Public License.
The goal of the FlightGear project is to create a sophisticated flight simulator framework for use in research or academic environments, for the development and pursuit of other interesting flight simulation ideas, and as an end-user application. We are developing a sophisticated, open simulation framework that can be expanded and improved upon by anyone interested in contributing.
There are many exciting possibilities for an open, free flight sim. We hope that this project will be interesting and useful to many people in many areas.
FlightGear is a free flight simulator project. It is being developed through the gracious contributions of source code and spare time by many talented people from around the globe. Among the many goals of this project are the quest to minimize short cuts and "do things right", the quest to learn and advance knowledge, and the quest to have better toys to play with.
The idea for Flight Gear was born out of a dissatisfaction with current commercial PC flight simulators. A big problem with these simulators is their proprietariness and lack of extensibility. There are so many people across the world with great ideas for enhancing the currently available simulators who have the ability to write code, and who have a desire to learn and contribute. Many people involved in education and research could use a spiffy flight simulator frame work on which to build their own projects; however, commercial simulators do not lend themselves to modification and enhancement. The Flight Gear project is striving to fill these gaps.
There are a wide range of people interested and participating in this project. This is truly a global effort with contributors from just about every continent. Interests range from building a realistic home simulator out old airplane parts, to university research and instructional use, to simply having a viable alternative to commercial PC simulators.
Flight Dynamics Models
With FlightGear it is possible to choose between three primary Flight Dynamics Models. It is possible to add new dynamics models or even interface to external "proprietary" flight dynamics models:
1. JSBSim: JSBSim is a generic, 6DoF flight dynamics model for simulating the motion of flight vehicles. It is written in C++. JSBSim can be run in a standalone mode for batch runs, or it can be the driver for a larger simulation program that includes a visuals subsystem (such as FlightGear.) In both cases, aircraft are modeled in an XML configuration file, where the mass properties, aerodynamic and flight control properties are all defined.
2. YASim: This FDM is an integrated part of FlightGear and uses a different approach than JSBSim by simulating the effect of the airflow on the different parts of an aircraft. The advantage of this approach is that it is possible to perform the simulation based on geometry and mass information combined with more commonly available performance numbers for an aircraft. This allows for quickly constructing a plausibly behaving aircraft that matches published performance numbers without requiring all the traditional aerodynamic test data.
3. UIUC: This FDM is based on LaRCsim originally written by the NASA. UIUC extends the code by allowing aircraft configuration files instead and by adding code for simulation of aircraft under icing conditions.
UIUC (like JSBSim) uses lookup tables to retrieve the component aerodynamic force and moment coefficients for an aircraft... and then uses these coefficients to calculate the sum of the forces and moments acting on the aircraft.
Extensive and Accurate World Scenery Data Base
Over 20,000 real world airports included in the full scenery set.
Correct runway markings and placement, correct runway and approach lighting.
Taxiways available for many larger airports (even including the green center line lights when appropriate.)
Sloping runways (runways change elevation like they usually do in real life.)
Directional airport lighting that smoothly changes intensity as your relative view direction changes.
World scenery fits on 3 DVDs. (Im not sure thats a feature or a problem!) But it means we have pretty detailed coverage of the entire world.
Accurate terrain worldwide, based on the most recently released SRTM terrain data.) 3 arc second resolution (about 90m post spacing) for North and South America, Europe, Asia, Africa, and Australia.
Scenery includes all vmap0 lakes, rivers, roads, railroads, cities, towns, land cover, etc.
Nice scenery night lighting with ground lighting concentrated in urban areas (based on real maps) and headlights visible on major highways. This allows for realistic night VFR flying with the ability to spot towns and cities and follow roads.
Scenery tiles are paged (loaded/unloaded) in a separate thread to minimize the frame rate hit when you need to load new areas.
Accurate and Detailed Sky Model
FlightGear implements extremely accurate time of day modeling with correctly placed sun, moon, stars, and planets for the specified time and date. FlightGear can track the current computer clock time in order to correctly place the sun, moon, stars, etc. in their current and proper place relative to the earth. If its dawn in Sydney right now, its dawn in the sim right now when you locate yourself in virtual Sidney. The sun, moon, stars, and planets all follow their correct courses through the sky. This modeling also correctly takes into account seasonal effects so you have 24 hour days north of the arctic circle in the summer, etc. We also illuminate the correctly placed moon with the correctly placed sun to get the correct phase of the moon for the current time/date, just like in real life.
Flexible and Open Aircraft Modeling System
FlightGear has the ability to model a wide variety of aircraft. Currently you can fly the 1903 Wright Flyer, strange flapping wing "ornithopters", a 747 and A320, various military jets, and several light singles. FlightGear has the ability to model those aircraft and just about everything in between.
FlightGear has extremely smooth and fluid instrument animation that updates at the same rate as your out-the-window view updates (i.e. as fast as your computer can crank, and not artificially limited and chunky like in some sims.)
FlightGear has the infrastructure to allow aircraft designers to build fully animated, fully operational, fully interactive 3d cockpits (which even update and display correctly from external chase plane views.)
FlightGear realistically models real world instrument behavior. Instruments that lag in real life, lag correctly in FlightGear, gyro drift is modeled correctly, the magnetic compass is subject to aircraft body forces -- all those things that make real world flying a challenge.
FlightGear also accurately models many instrument and system failures. If the vacuum system fails, the HSI gyros spin down slowly with a corresponding degradation in response as well as a slowly increasing bias/error.
Moderate Hardware Requirements
The intention of FlightGear is to look nice, but not at the expense of other aspects of a realistic simulator. Our focus is not on competing in the "game" market and not on the ultra-flashy graphic tricks.
The result is a simulator with moderate hardware requirements to run at smooth frame rates. You can be reasonably happy on a $500-1000 (USD) machine (possibly even less if you are careful) and dont necessarily need $3000 (USD) worth of new hardware like you do with the many of the newest games.
That said, the more hardware you throw at FlightGear, the better it looks and runs, so dont feel like you have to chuck your expensive new hardware if you just purchased it. :-)
Internal Properties EXPOSED!
FlightGear allows users and aircraft designers access to a very large number of internal state variables via numerous internal and external access mechanisms. These state variables are organized into a convenient hierarchal "property" tree.
Using the properties tree it is possible to monitor just about any internal state variable in FlightGear. Its possible to remotely control FlightGear from an external script. You can create model animations, sound effects, instrument animations and network protocols for about any situation imaginable just by editing a small number of human readable configuration files. This is a powerful system that makes FlightGear immensely flexible, configurable, and adaptable.
Networking options
A number of networking options allow FlightGear to communicate with other instances of FlightGear, GPS receivers, external flight dynamics modules, external autopilot or control modules, as well as other software such as the Open Glass Cockpit project and the Atlas mapping utility.
A generic input/output option allows for a user defined output protocol to a file, serial port or network client.
A multi player protocol is available for using FlightGear on a local network in a multi aircraft environment, for example to practice formation flight or for tower simulation purposes.
The powerful network options make it possible to synchronize several instances of FlightGear allowing for a multi-display, or even a cave environment. If all instances are running at the same frame rate consistently, it is possible to get extremely good and tight synchronization between displays.
Flight Gear and its source code have intentionally been kept open, available, and free. In doing so, we are able to take advantage of the efforts of tremendously talented people from around the world. Contrast this with the traditional approach of commercial software vendors, who are limited by the collective ability of the people they can hire and pay. Our approach brings its own unique challenges and difficulties, but we are confident (and other similarly structured projects have demonstrated) that in the long run we can outclass the commercial "competition."
Contributing to Flight Gear can be educational and a lot of fun. A long time developer, Curtis Olson, had this to say about working on Flight Gear:
Personally, Flight Gear has been a great learning experience for me. I have been exposed to many new ideas and have learned a tremendous amount of "good stuff" in the process of discussing and implementing various Flight Gear subsystems. If for no other reason, this alone makes it all worth while.
<<lessThe goal of the FlightGear project is to create a sophisticated flight simulator framework for use in research or academic environments, for the development and pursuit of other interesting flight simulation ideas, and as an end-user application. We are developing a sophisticated, open simulation framework that can be expanded and improved upon by anyone interested in contributing.
There are many exciting possibilities for an open, free flight sim. We hope that this project will be interesting and useful to many people in many areas.
FlightGear is a free flight simulator project. It is being developed through the gracious contributions of source code and spare time by many talented people from around the globe. Among the many goals of this project are the quest to minimize short cuts and "do things right", the quest to learn and advance knowledge, and the quest to have better toys to play with.
The idea for Flight Gear was born out of a dissatisfaction with current commercial PC flight simulators. A big problem with these simulators is their proprietariness and lack of extensibility. There are so many people across the world with great ideas for enhancing the currently available simulators who have the ability to write code, and who have a desire to learn and contribute. Many people involved in education and research could use a spiffy flight simulator frame work on which to build their own projects; however, commercial simulators do not lend themselves to modification and enhancement. The Flight Gear project is striving to fill these gaps.
There are a wide range of people interested and participating in this project. This is truly a global effort with contributors from just about every continent. Interests range from building a realistic home simulator out old airplane parts, to university research and instructional use, to simply having a viable alternative to commercial PC simulators.
Flight Dynamics Models
With FlightGear it is possible to choose between three primary Flight Dynamics Models. It is possible to add new dynamics models or even interface to external "proprietary" flight dynamics models:
1. JSBSim: JSBSim is a generic, 6DoF flight dynamics model for simulating the motion of flight vehicles. It is written in C++. JSBSim can be run in a standalone mode for batch runs, or it can be the driver for a larger simulation program that includes a visuals subsystem (such as FlightGear.) In both cases, aircraft are modeled in an XML configuration file, where the mass properties, aerodynamic and flight control properties are all defined.
2. YASim: This FDM is an integrated part of FlightGear and uses a different approach than JSBSim by simulating the effect of the airflow on the different parts of an aircraft. The advantage of this approach is that it is possible to perform the simulation based on geometry and mass information combined with more commonly available performance numbers for an aircraft. This allows for quickly constructing a plausibly behaving aircraft that matches published performance numbers without requiring all the traditional aerodynamic test data.
3. UIUC: This FDM is based on LaRCsim originally written by the NASA. UIUC extends the code by allowing aircraft configuration files instead and by adding code for simulation of aircraft under icing conditions.
UIUC (like JSBSim) uses lookup tables to retrieve the component aerodynamic force and moment coefficients for an aircraft... and then uses these coefficients to calculate the sum of the forces and moments acting on the aircraft.
Extensive and Accurate World Scenery Data Base
Over 20,000 real world airports included in the full scenery set.
Correct runway markings and placement, correct runway and approach lighting.
Taxiways available for many larger airports (even including the green center line lights when appropriate.)
Sloping runways (runways change elevation like they usually do in real life.)
Directional airport lighting that smoothly changes intensity as your relative view direction changes.
World scenery fits on 3 DVDs. (Im not sure thats a feature or a problem!) But it means we have pretty detailed coverage of the entire world.
Accurate terrain worldwide, based on the most recently released SRTM terrain data.) 3 arc second resolution (about 90m post spacing) for North and South America, Europe, Asia, Africa, and Australia.
Scenery includes all vmap0 lakes, rivers, roads, railroads, cities, towns, land cover, etc.
Nice scenery night lighting with ground lighting concentrated in urban areas (based on real maps) and headlights visible on major highways. This allows for realistic night VFR flying with the ability to spot towns and cities and follow roads.
Scenery tiles are paged (loaded/unloaded) in a separate thread to minimize the frame rate hit when you need to load new areas.
Accurate and Detailed Sky Model
FlightGear implements extremely accurate time of day modeling with correctly placed sun, moon, stars, and planets for the specified time and date. FlightGear can track the current computer clock time in order to correctly place the sun, moon, stars, etc. in their current and proper place relative to the earth. If its dawn in Sydney right now, its dawn in the sim right now when you locate yourself in virtual Sidney. The sun, moon, stars, and planets all follow their correct courses through the sky. This modeling also correctly takes into account seasonal effects so you have 24 hour days north of the arctic circle in the summer, etc. We also illuminate the correctly placed moon with the correctly placed sun to get the correct phase of the moon for the current time/date, just like in real life.
Flexible and Open Aircraft Modeling System
FlightGear has the ability to model a wide variety of aircraft. Currently you can fly the 1903 Wright Flyer, strange flapping wing "ornithopters", a 747 and A320, various military jets, and several light singles. FlightGear has the ability to model those aircraft and just about everything in between.
FlightGear has extremely smooth and fluid instrument animation that updates at the same rate as your out-the-window view updates (i.e. as fast as your computer can crank, and not artificially limited and chunky like in some sims.)
FlightGear has the infrastructure to allow aircraft designers to build fully animated, fully operational, fully interactive 3d cockpits (which even update and display correctly from external chase plane views.)
FlightGear realistically models real world instrument behavior. Instruments that lag in real life, lag correctly in FlightGear, gyro drift is modeled correctly, the magnetic compass is subject to aircraft body forces -- all those things that make real world flying a challenge.
FlightGear also accurately models many instrument and system failures. If the vacuum system fails, the HSI gyros spin down slowly with a corresponding degradation in response as well as a slowly increasing bias/error.
Moderate Hardware Requirements
The intention of FlightGear is to look nice, but not at the expense of other aspects of a realistic simulator. Our focus is not on competing in the "game" market and not on the ultra-flashy graphic tricks.
The result is a simulator with moderate hardware requirements to run at smooth frame rates. You can be reasonably happy on a $500-1000 (USD) machine (possibly even less if you are careful) and dont necessarily need $3000 (USD) worth of new hardware like you do with the many of the newest games.
That said, the more hardware you throw at FlightGear, the better it looks and runs, so dont feel like you have to chuck your expensive new hardware if you just purchased it. :-)
Internal Properties EXPOSED!
FlightGear allows users and aircraft designers access to a very large number of internal state variables via numerous internal and external access mechanisms. These state variables are organized into a convenient hierarchal "property" tree.
Using the properties tree it is possible to monitor just about any internal state variable in FlightGear. Its possible to remotely control FlightGear from an external script. You can create model animations, sound effects, instrument animations and network protocols for about any situation imaginable just by editing a small number of human readable configuration files. This is a powerful system that makes FlightGear immensely flexible, configurable, and adaptable.
Networking options
A number of networking options allow FlightGear to communicate with other instances of FlightGear, GPS receivers, external flight dynamics modules, external autopilot or control modules, as well as other software such as the Open Glass Cockpit project and the Atlas mapping utility.
A generic input/output option allows for a user defined output protocol to a file, serial port or network client.
A multi player protocol is available for using FlightGear on a local network in a multi aircraft environment, for example to practice formation flight or for tower simulation purposes.
The powerful network options make it possible to synchronize several instances of FlightGear allowing for a multi-display, or even a cave environment. If all instances are running at the same frame rate consistently, it is possible to get extremely good and tight synchronization between displays.
Flight Gear and its source code have intentionally been kept open, available, and free. In doing so, we are able to take advantage of the efforts of tremendously talented people from around the world. Contrast this with the traditional approach of commercial software vendors, who are limited by the collective ability of the people they can hire and pay. Our approach brings its own unique challenges and difficulties, but we are confident (and other similarly structured projects have demonstrated) that in the long run we can outclass the commercial "competition."
Contributing to Flight Gear can be educational and a lot of fun. A long time developer, Curtis Olson, had this to say about working on Flight Gear:
Personally, Flight Gear has been a great learning experience for me. I have been exposed to many new ideas and have learned a tremendous amount of "good stuff" in the process of discussing and implementing various Flight Gear subsystems. If for no other reason, this alone makes it all worth while.
Download (2.0MB)
Added: 2006-04-07 License: GPL (GNU General Public License) Price:
1533 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above vfs australia search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed