Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.970.505 Times

C++ XML Objects 1.0.0.7

  Date Added: August 15, 2010  |  Visits: 836

C++ XML Objects

Report Broken Link
Printer Friendly Version


Product Homepage
Download (73 downloads)



C++ XML Objects is a framework for persisting hierarchies of C++ objects to and from XML. Boost, The STL and Patterns are used extensively. All platforms which support Boost will be supported. Sometimes there is a need to save hierarchies of C++ objects to a file (or DB etc), and then retrieve them at a later date. This project allows your classes to derive from a single object (called "xmlobj"), provide a few extra methods which allow the visitor pattern to work on them and register them so that they can be read or written to an XML stream. The only overhead is a per-class type and name of each object (as std::string). The members dont need to be wrapped which means that your memory footprint wont really get any larger. There are actually 2 separate projects which are combined to make "cppxmlobj". The first is a called "cppreflect" and provides a framework for providing reflection to C++ objects. Reflection is the mechanism by which your class members can be referenced by a string name. To achieve this, "cppreflect" uses the visitor pattern. The other project is "cpppersist" which adds the right methods to each object so that it can be read or written to some type of stream. These projects are included as part of this (they arent separate SourceForge projects), but they are completely independent of each other, so you could build your own scheme to persist your objects to a different type of file, or provide some other type of mechanism to read and write your objects data. To interoperate, these two projects share a common base class which is provided by another independent project called "cppcommon". This is a simple class which provides the abstract interfaces necessary for an object to provide different types of facilities. The project uses all the facilities of Boost for the build system (and for a bunch of the implementation) so you will need to get and build it. It uses the same license as Boost which means you can freely use it (its really only useful as source code anywhere), as long as you dont change the copyright message at the top of the files. If you find it useful, or find some bugs (and fix them, then get back to me and Ill incorporate the changes. If you do this through SourceForge, then we can track the bugs etc. Whats New in This Release: - Added in delayed loading. This allows a system to only load in an object in an XML file when the object is actually referenced. Added in "platforms" to documentation for supported platforms. Now builds on OS X Tiger, GCC 4.0 and latest BOOST (1.33.1). Also builds on latest Linux. Change the documentation layout (thanks Spirit), and added Generic objects. Also changed to use a single license.txt referenced at the top of each file. Since this code has been stable and working for a while, next release will be beta if I can build on a few more systems.. Get XML Literate Programming System at SourceForge.net. Fast, secure and free downloads from the largest Open Source applications and software directory. Framework for literate programming using XML written in C++. Boost, The STL and Patterns are used extensively. All platforms which support Boost will be supported.

Requirements: No special requirements
Platforms: Linux
Keyword: Boost C++ Framework Hierarchies Libraries Object Objects Programming To And From Xml
Users rating: 0/10

License: Freeware Size: 409.6 KB
USER REVIEWS
More Reviews or Write Review


C++ XML OBJECTS RELATED
Libraries  -  VIF Lightweight Framework 1.0
VIF Lightweight Framework is an object-relational bridge to store and retrieve data in relational database management systems (RDMS). The frameworks building blocks to access data are data object models (DOM objects) and joined data object models...
 
Utilities  -  Hydrate 2.0
Hydrate is a Java tool that provides for fast efficient and error-free transformation of data between three different representations: relational databases, objects in an object-oriented programming language and extended markup language (XML)....
7 MB  
Utilities  -  C++ Communication Services Framework 0.7.7
A C++ framework utilizing Design Patterns for creating Linux and Windows communications applications that contain Dialogic products. Includes media and network classes (analog, digital, SIP, H323), multithreaded event handling, distributed app...
6.36 MB  
Libraries  -  libb64 1.2.1
libb64 is a library of ANSI C routines for fast encoding/decoding data into and from a base64-encoded format. C++ wrappers are included, as well as the source code for standalone encoding and decoding executables. Base64 uses a subset of...
7.17 KB  
Programming  -  Expat Objective-C Bindings 1.0
A small Objective-C library which provides a SAX-like object-oriented interface to the Expat XML parser library.
31.94 KB  
Programming  -  The unit++ test framework 3.0.0
Unit++ is a C++ framework in the spirit of junit, but implemented from scratch in C++. This is done to work better with the C++ world, than a port of the Java version can.
58.01 KB  
Programming  -  JPList 1.1
The JPList project provides a Java library to parse and build ASCII Property lists to and from Java objects. The design of the API is heavily influenced by the JDOM API, which provides a library to parse and build XML documents to and from JDOM...
40.96 KB  
Unit Conversion Tools  -  MiniCalcEuro 1.1
MiniCalcEuro is a small, multilingual, program in Visual C + that allows you to perform conversions (to and from) between Euros and all 12 currencies of the Euro zone. All calculations are made according to the official rules of number of...
187 KB  
Programming  -  XmlPL - The XML Processing Language 0.1.3
XmlPL is a C like language with special syntax for creating and manipulating XML data. If you know Java, C or C++ and XPath then XmlPL is easy to learn. XML is a native data type and is processed more naturally using XML path expressions and...
2.97 MB  
File Management  -  Zip and Pickle 1.0
This module saves and reloads compressed representations of generic Python objects to and from the disk.
 
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB