Main > Free Download Search >

Free gobject introspection software for linux

gobject introspection

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 71
GObject Introspection 0.6.2

GObject Introspection 0.6.2


GObject Introspections goal is to describe the APIs and collect them in a uniform, machine readable format. more>> <<less
Added: 2009-01-22 License: GPL Price: FREE
1 downloads
Class::IntrospectionMethods 1.003

Class::IntrospectionMethods 1.003


Class::IntrospectionMethods is a Perl module that creates methods with introspection. more>>
Class::IntrospectionMethods is a Perl module that creates methods with introspection.

SYNOPSIS

use Class::IntrospectionMethods qw/make_methods/;

make_methods
(
parent,
global_catalog =>
{
name => metacat,
list =>
[
[qw/foo/] => f_cat,
[qw/bar baz/] => b_cat,
],
}
new_with_init => new,
get_set => [ qw /foo bar baz / ];
) ;

This module provides:
A way to set up a lot of get/set method. These get/set methods can access plain scalars, array, hash. These scalar, hash or array can be tied (See perltie) with classes specified by the user. The element of these arrays or hashes can be constrained to be object, tied scalar.
A way to later query the object or class to retrieve the list of methods (aka slots) created by this module.

A way to organize these slots in several catalogs.
When a slot contains object or tied scalars hashes or arrays, the contained object can be queried for the container object. In other words, the parent object (the one constructed by Class::IntrospectionMethods contains a child object in one of its slots either as a plain object or an object hidden behind a tied construct. Class::IntrospectionMethods will provide the child object a method to retrieve the parent object reference.

For instance, you can use this module to create a tree where each node or leaf is an object. In this case, this module provides methods to navigate up the tree of objects with the installed "parent" method.

In other words, this module provides special methods to enable the user to navigate up or down a tree (or directed graph) using introspection (to go down) and the "parent" method to go up.

You may notice similarities between this module and Class::MethodMaker. In fact this module was written from Class::MethodMaker v1.08, but it does not provide most of the fancy methods of Class::MethodMaker. Only scalar, array and hash accessors (with their tied and objects variants) are provided.

Originally, the introspection and "parent" functionalities were implemented in Class::MethodMaker. Unfortunately, they were not accepted by Class::MethodMakers author since they did not fit his own vision of his module (fair enough).
The old API of Class::MethodMaker is provided as deprecated methods. Using the new (and hopefully more consistent) API is prefered.

<<less
Download (0.031MB)
Added: 2007-03-06 License: Perl Artistic License Price:
962 downloads
pygobject 2.13.2

pygobject 2.13.2


pygobject archive contains bindings for the GObject, to be used in Python. more>>
pygobject archive contains bindings for the GObject, to be used in Python.

It is a fairly complete set of bindings, its already rather useful, and is usable to write moderately complex programs. (see the examples directory for some examples of the simpler programs you could write).

<<less
Download (0.42MB)
Added: 2007-07-07 License: LGPL (GNU Lesser General Public License) Price:
843 downloads
XMMS InfoPipe 1.3

XMMS InfoPipe 1.3


XMMS InfoPipe is a plugin that reports XMMS status via named pipe. more>>
XMMS InfoPipe is a plugin that reports XMMS status via named pipe. XMMS InfoPipe is handy if you want to add interesting real-time information for a personal web page, or a web cam page.

While theres a possibility of setting up programs to be executed by XMMS when changing songs, XMMS InfoPipe provides better introspection: You can get information on song position, song length, playlist position, status (stopped/playing/paused), song title as displayed by XMMS, and file name. The information is reported in easily parseable textual format.

The possibilities for information use are limitless. So far, here are some of the things people have been using InfoPipe for:

Showing information of XMMS on home page, webcam page, or something related (script included)
Showing player information on IRC (spotted one script for Irssi)
Using any speech synthetizer to say the song information, reducing the need for external displays, and helping listening to unfamiliar music in bed when all you have is a remote control =) (script included).

Yeah, LIRC plugin seems to support this already, but it only supports ViaVoice - this allows you to use any speech synth... or any other types of output. Just an example of flexibility - I created the script to do that at 4 oclock in the morning, and even got 99% of Perl recommendations of good coding right, even when I wasnt fully awake.

<<less
Download (0.17MB)
Added: 2006-04-07 License: GPL (GNU General Public License) Price:
1307 downloads
Neutrino 0.8.4

Neutrino 0.8.4


Neutrino is a GNOME based GUI for managing your Creative Nomad / DAP Jukeboxes. more>>
Neutrino is a GNOME based GUI for managing your Creative Nomad / DAP Jukeboxes.
Neutrino is a GNOME based GUI for managing your Creative Nomad / DAP Jukeboxes. Support for accessing jukeboxes from other applications is planned by utilizing DBUS.
Additionally the backend of Neutrino is fully separated from the GUI, and is implemented as a separate GObject for easy integration into other applications.
Main features:
- Author/Album cataloguing system
- Create/Delete/Edit playlists via drag and drop
- Multiple attached Jukeboxes can be switched between on the fly
- Playback support with repeat and shuffle features
- Edit track information held on the jukebox (artist, album, genre etc,)
- Regular expression based search mechanism for search by artist, album, year, genre, and title.
- Transfer wav / mp3 files to / from the jukebox
- Support for ID3 V1.x and basic ID3 V2 tags for setting track information on mp3s
- Track information can be obtained from the filename of uploaded files
- Supports uploading from an mpu file (local uris only)
- Drop files onto the main window to upload
- Display jukebox statistics
- Tasks requiring access to the jukebox are queued so you arent slowed down too much by the jukebox itself
- Playback does not block most operations
<<less
Download (0.47MB)
Added: 2005-08-15 License: GPL (GNU General Public License) Price:
1535 downloads
msn-pecan 0.0.19

msn-pecan 0.0.19


msn-pecan is an alternative MSN protocol plugin for libpurple more>>
msn-pecan 0.0.19 offers you a very alternative MSN protocol plugin for libpurple. The current development of the MSN protocol plug-in seems to be lagging because of bad development decisions. This is a fork of that code with a much faster development process.

Major Features:

  1. Support for personal messages (readonly)
  2. Server-side storage for display names
  3. Partial direct connection support
  4. Improved network IO
  5. Improved error handling
  6. Network issues tested with netem
  7. GObject usage

Enhancements

  • Personal status messages now work properly (can be enabled and disabled).
  • Voice clip support has been added.
  • There is a fix for WLM 2009 user displays, P4-context support for groups.im, a new option to hide Plus! tags, and support for Plus! sounds.
<<less
Added: 2009-06-16 License: GPL Price: FREE
15 downloads
Moose::Cookbook::FAQ 0.14

Moose::Cookbook::FAQ 0.14


Moose::Cookbook::FAQ is a frequenty asked questions about Moose. more>>
Moose::Cookbook::FAQ is a frequenty asked questions about Moose.

Is Moose "production ready"?

Yes and No. Currently I have one web application in production using Moose, and at $work we are re-writing our core offering to use Moose. Several other people on #moose either have sites in production which use Moose, or are in the process of deploying sites which use Moose.

The biggest barrier to widespread use of Moose in production right now is speed of development and speed of execution.

Since development is still happening, regular upgrades are a fact of life. This can be hairy in production, so if this makes you quake with fear, you might want to wait a few months.

Then comes speed of execution. Moose is actually pretty fast, and makes great effort to stay out of your way when you dont want it there. However, certain parts of Moose are slow, such as compile time setup, introspection and object construction (only because it uses introspection). See "Is Moose slow?" below for a deeper discussion on the subject.

Is Mooses API stable?

Yes and No. The external API, the one 90% of users will interact with, is very stable and any changes will be 100% backwards compatible. The introspection API is mostly stable, I still reserve the right to tweak that if needed, but I will do my absolute best to maintain backwards comptability here as well.

Is Moose slow?

Again, this one is tricky, so Yes and No.

First let me say that nothing in life is free, and that some Moose features do cost more than others. It is also the policy of Moose to only charge you for the features you use, and to do our absolute best to not place any extra burdens on the execution of your code for features you are not using.

Next, I will point out again that we are still in the "early adopter" phase, so speed it not that important yet. We are actually optimizing for "theoretical correctness" first, and we will optimize for speed later. It has been our experience that taking this approach allows for greater optimization capacity.

And lastly, I want to reassure the speed junkies out there that we are working on it.
We have the immutable classes in Class::MOP, but which are not yet integrated with Moose. These allow you to "close" a class and then for many of its more expensive methods to me memoized. Our tests indicated a performance comparable (and in some instances exceeding) that of hand-coded Perl.

We are also discussing and experimenting with Module::Compile, and the idea of compiling highly optimized .pmc files. And we have also mapped out some core methods as canidates for conversion to XS.

<<less
Download (0.083MB)
Added: 2006-10-17 License: Perl Artistic License Price:
1102 downloads
GOB 2.0.14

GOB 2.0.14


GOB (GOB2 anyway) is a preprocessor for making GObjects with inline C code so that generated files are not edited. more>>
GOB (GOB2 anyway) project is a preprocessor for making GObjects with inline C code so that generated files are not edited. Syntax is inspired by Java and Yacc or Lex. The implementation is intentionally kept simple, and no C actual code parsing is done.
Main features:
- C is a perfect (well mostly) language, no need for another language
- Writing a fully featured GObject is a hassle
- GObject has little type safety, GOB improves on it.
- Need for a generator that doesnt require changes to generated code
- I like how Java writes method code directly into the class definition.
<<less
Download (0.23MB)
Added: 2006-01-05 License: GPL (GNU General Public License) Price:
1398 downloads
Glib::CodeGen 1.120

Glib::CodeGen 1.120


Glib::CodeGen is a code generation utilities for Glib-based bindings. more>>
Glib::CodeGen is a code generation utilities for Glib-based bindings.

SYNOPSIS

# usually in Makefile.PL
use Glib::CodeGen;

# most common, use all defaults
Glib::CodeGen->parse_maps (myprefix);
Glib::CodeGen->write_boot;

# more exotic, change everything
Glib::CodeGen->parse_maps (foo,
input => foo.maps,
header => foo-autogen.h,
typemap => foo.typemap,
register => register-foo.xsh);
Glib::CodeGen->write_boot (filename => bootfoo.xsh,
glob => Foo*.xs,
ignore => ^(Foo|Foo::Bar)$);

# add a custom type handler (rarely necessary)
Glib::CodeGen->add_type_handler (FooType => ≥n_foo_stuff);
# (see the section EXTENDING TYPE SUPPORT for more info.)

This module packages some of the boilerplate code needed for performing code generation typically used by perl bindings for gobject-based libraries, using the Glib module as a base.

The default output filenames are in the subdirectory build, which usually will be present if you are using ExtUtils::Depends (as most Glib-based extensions probably should).

<<less
Download (0.22MB)
Added: 2006-07-17 License: Perl Artistic License Price:
1195 downloads
Gtk2::CodeGen 1.122

Gtk2::CodeGen 1.122


Gtk2::CodeGen is a code generation utilities for Glib-based bindings. more>>
Gtk2::CodeGen is a code generation utilities for Glib-based bindings.

SYNOPSIS

# usually in Makefile.PL
use Gtk2::CodeGen;

# most common, use all defaults
Gtk2::CodeGen->parse_maps (myprefix);
Gtk2::CodeGen->write_boot;

# more exotic, change everything
Gtk2::CodeGen->parse_maps (foo,
input => foo.maps,
header => foo-autogen.h,
typemap => foo.typemap,
register => register-foo.xsh);
Gtk2::CodeGen->write_boot (filename => bootfoo.xsh,
glob => Foo*.xs,
ignore => ^(Foo|Foo::Bar)$);

This module packages some of the boilerplate code needed for performing code generation typically used by perl bindings for gobject-based libraries, using the Glib module as a base.

The default output filenames are in the subdirectory build, which usually will be present if you are using ExtUtils::Depends (as most Glib-based extensions probably should).

<<less
Download (0.60MB)
Added: 2006-07-19 License: Perl Artistic License Price:
1194 downloads
GTK-Doc 1.8

GTK-Doc 1.8


GTK-Doc is a GTK+ DocBook Documentation Generator. more>>
GTK-Doc is used to document C code. It is typically used to document the public API of libraries, such as the GTK+ and GNOME libraries, but it can also be used to document application code.

Note that GTK-Doc wasnt originally intended to be a general-purpose documentation tool, so it can be a bit awkward to setup and use. For a more polished general-purpose documentation tool you may want to look at Doxygen (http://www.doxygen.org/). However GTK-Doc has some special code to document the signals and properties of GTK+ widgets and GObject classes which other tools may not have.

GTK-Doc allows your documentation to be written in 2 ways:

a) Embedded inside the source code in specially-formatted comments.

or

b) Added to the template files which gtk-doc outputs after scanning all the header files and parsing the declarations.

From these source code comments and template files GTK-Doc generates a Docbook XML (or SGML) document, which is then transformed into HTML. The generated HTML documentation can be browsed in an ordinary web browser or by using the special Devhelp API browser (see http://developer.imendio.com/wiki/Devhelp).

<<less
Download (0.23MB)
Added: 2007-02-19 License: LGPL (GNU Lesser General Public License) Price:
980 downloads
Castor 0.9.6

Castor 0.9.6


Castor is a Java to XML data-binding, Java Data Objects (O/R) and DSML. more>>
The Castor project has been developed out of need: the need to get stuff done and the need to write useful code.
It has been designed and coded over many cups of Dunkin Donuts Hazlenut coffee, Starbucks Latte, and tall no-whip White Mochas, as proof that coffee beans do come in handy.
Castor includes software, such as Xerces, Jakarta ORO, and Jakarta Regexp, developed by the Apache Software Foundation. Castor also includes JUnit testing framework
Main features:
- Castor XML: Java object model to and from XML (XML databinding)
- Generate source code from an XML Schema
- Default introspection or mapping file for existing object models
- Castor JDO: Java object persistence to RDBMS Castor JDO is not the same-as or compatible with Suns JDO. We have a different approach to handling data object to RDBMS mappings.
- XML-based mapping file to specify bindings for existing object models
- Support for schema-less Java to XML binding
- In memory caching and write-at-commit reduces JDBC operations
- Two phase commit transactions, object rollback and deadlock detection
- OQL query mapping to SQL queries
- EJB container managed persistence provider for OpenEJB
- Ability to create base mapping from existing Java classes
- Ability to create an XML Schema from an XML input document
Enhancements:
- Fixed problem with TransactionContext.getObjectEntry(Object) that was introduced as a result of adding support for lazy loading 1:1 relations.
- Added F.A.Q. entry describing compatibility problems between various releases of mySQL 4.1.x and its JDBC drivers.
- Reverted various DOCTYPE definitions in src/tests/jdo to use DTDs.
- Fixed issue with GeneralizedFieldHandler not able to handle collections. Collections are now automatically iterated over during getValue() calls and each item in the collection is passed into the convertUponGet method. To retain the old behavior simply add a call to #setCollectionIteration with a value of false in the constructor of your GeneralizedFieldHandler. The behavior for setter methods is not changed since only one item at a time is passed into the setter already.
- Fixed whitespace processing bug, where a was actually getting appended to the end of a string value if the parser was calling the #characters method again with only whitespace following a previous call to #characters method where valid content existed.
- Fixed recent issue where ElementDecl#getType() method was always returning null for element references.
<<less
Download (1.8MB)
Added: 2005-04-22 License: BSD License Price:
1645 downloads
joeq virtual machine 20030812

joeq virtual machine 20030812


joeq virtual machine is a language-independent Java virtual machine implemented in Java. more>>
Joeq is a virtual machine and compiler infrastructure designed to facilitate research in virtual machine technologies such as Just-In-Time and Ahead-Of-Time compilation, advanced garbage collection techniques, distributed computation, sophisticated scheduling algorithms, and advanced run time techniques.
Joeq is entirely implemented in Java, leading to reliability, portability, maintainability, and efficiency. It is also language-independent, so code from any supported language can be seamlessly compiled, linked, and executed -- all dynamically.
Each component of the virtual machine is written to be independent with a general but well-defined interface, making it easy to experiment with new ideas.
Joeq is released as open source software, and is being used as a framework by researchers on five continents on topics ranging from automatic distributed virtual machines to whole-program pointer analysis.
Joeq is a virtual machine and compiler infrastructure designed to be a platform for research in compilation and virtual machine technologies. We had three main goals in designing the system. First and foremost, we wanted the system to be flexible. We are interested in a variety of compiler and virtual machine research topics, and we wanted a system that would not be specific to researching a particular area.
For example, we have interest in both static and dynamic compilation techniques, and in both type-safe and unsafe languages. We wanted a system that would be as open and general as possible, without sacrificing usability or performance.
Second, we wanted the system to be easy to experiment with. As its primary focus is research, it should be straightforward to prototype new ideas in the framework. With this in mind, we tried to make the system as modular as possible, so that each component is easily replaceable. Learning from our experience with Jalapeno, another virtual machine written in Java, we decided to implement the entire system in Java.
This makes it easy to quickly implement and prototype new ideas, and features like garbage collection and exception tracebacks ease debugging and improve productivity. Java, being a dynamic language, is also a good consumer for many of our dynamic compilation techniques; the fact that our dynamic compiler can compile the code of the virtual machine itself means that it can dynamically optimize the virtual machine code with respect to the application that is running on it. Javas object-oriented nature also facilitates modularity of the design and implementation.
Third, we wanted the system to be useful to a wide audience. The fact that the system is written in Java means that much of the system can be used on any platform that has an implementation of a Java virtual machine. The fact that Joeq supports popular input languages like Java, C, C++, Fortran, and even x86 binary code increases the scope of input programs. We released the system on the SourceForge web site as open source under the Library GNU Public License.
It has been picked up by researchers on five continents for various purposes, among them: automatic extraction of component interfaces, static whole-program pointer analysis, context-sensitive call graph construction, automatic distributed computation, versioned type systems for operating systems, sophisticated profiling of applications, advanced dynamic compilation techniques, system checkpointing, anomaly detection, secure execution platforms and autonomous systems. In addition, Joeq is now used as the basis of the Advanced Compilation Techniques class taught at Stanford University.
Joeq supports two modes of operation: native execution and hosted execution. In native execution, the Joeq code runs directly on the hardware. It uses its own run-time routines, thread package, garbage collector, etc. In hosted execution, the Joeq code runs on top of another virtual machine. Operations to access objects are translated into calls into the reflection library of the host virtual machine.
The user code that executes is identical, and only a small amount of functionality involving unsafe operations is not available when running in hosted execution mode. Hosted execution is useful for debugging purposes and when the underlying machine architecture is not yet directly supported by Joeq. We also use hosted execution mode to bootstrap the system and perform checkpointing, a technique for optimizing application startup times.
Joeq system consists of seven major parts:
- Front-end: Handles the loading and parsing of input files, such as Java class files, SUIF files, and binary object files.
- Compiler: A framework for performing analyses and optimizations on code. This includes the intermediate representation (IR) of our compiler.
- Back-end: Converts the compilers intermediate representation into native, executable code. This code can be output to an object file or written into memory to be executed. In addition, it generates metadata about the generated code, such as garbage collection maps and exception handling information.
- Interpreter: Directly interprets the various forms of compiler intermediate representations.
- Memory Manager: Organizes and manages memory. Joeq supports both explicitly-managed and garbage-collected memory.
- Dynamic: Provides profile data to the code analysis and optimization component, makes compilation policy decisions, and drives the dynamic compiler.
- Run-time Support: Provides runtime support for introspection, thread scheduling, synchronization, exception handling, interfacing to external code, and language-specific features such as dynamic type checking.
<<less
Download (1.0MB)
Added: 2005-04-22 License: LGPL (GNU Lesser General Public License) Price:
1645 downloads
schemon 0.1.0

schemon 0.1.0


schemon is a Scheme interpreter for Python. more>>
Schemon is a scheme interpreter for Python programs. It is extensible and requires no explicit type checking for conversion between Scheme and Python types. It is fully R5Rs compliant.
Main features:
- Easy extending with python code. No typechecking is required (done by name mangling, see manual), and you do not have to add any new functions to any environment lists, they are added by introspection.
- Full R5RS support, including macros (only decimal integers supported)
- Better command-line environment including tab-completion
- First class hygienic macros
- Advanced type system for use when embedding scheme code in python
Version restrictions:
- Not all functions are defined in python, so some scheme functions are only availible from scheme (due to implementation details).
- Functions and lambda expressions are not analyzed beforehand, so they will not run at optimum speed. However, as we are running in python anyway, I did not view speed as a good excuse to add more complexity.
<<less
Download (0.15MB)
Added: 2005-04-14 License: GPL (GNU General Public License) Price:
1653 downloads
Clutter 0.230

Clutter 0.230


Clutter is a simple GL-based canvas library. more>>
Clutter is a simple GL-based canvas library.

SYNOPSIS

use Clutter qw( :init );

# create the main stage
my $stage = Clutter::Stage->get_default();
$stage->set_color(Clutter::Color->parse(DarkSlateGray));
$stage->signal_connect(key-press-event => sub { Clutter->main_quit() });
$stage->set_size(800, 600);

# add an actor and place it right in the middle
my $label = Clutter::Label->new("Sans 30", "Hello, Clutter!");
$label->set_color(Clutter::Color->new(0xff, 0xcc, 0xcc, 0xdd));
$label->set_position(($stage->get_width() - $label->get_width()) / 2,
($stage->get_height() - $label->get_height()) / 2);
$stage->add($label);

$stage->show_all();

Clutter->main();

0;

Clutter is a GObject based library for creating fast, visually rich graphical user interfaces. It is intended for creating single window heavily stylised applications such as media box uis, presentations or kiosk style programs in preference to regular desktop style applications.

Clutters underlying graphics rendering is OpenGL (version 1.2+) based. The clutter API is intended to be easy to use, attempting to hide many of the GL complexities. It targets mainly 2D based graphics and is definetly not intended to be a general interface for all OpenGL functionality.

As well as OpenGL Clutter depends on and uses Glib, Glib::Object, Gtk2::Pango, Gtk2::Gdk::Pixbuf and GStreamer.

<<less
Download (0.034MB)
Added: 2007-05-09 License: Perl Artistic License Price:
899 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5