rpavlik / cppintrospection Goto Github PK
View Code? Open in Web Editor NEWC++ introspection code generator
License: Other
C++ introspection code generator
License: Other
cppintrospection ---------------- The cppintrospection library was a part of the OpenSceneGraph library before version 2.9.8. And it is then removed from the kernel and work as an independent project. It is initially created and managed by Macro Jez and Robert Osfield, and then managed by Wang Rui. It has been renamed to cppintrospection by Mike Wozniewski, Tristan Matthews and Alexandre Quessy in 2011. cppintrospection provides a reflection mechanism which could do non-intrusive callings of properties and methods at runtime. This makes OSG able to work with languages other than C/C++. cppintrospection is ideal for providing non native language binding to the OpenSceneGraph, convenient means for editing properties in a generic way, such as required in scene graph editors, and also facilitates the automatic serealization of objects. cppintrospection can be used to provide introspection support to 3rd Party libraries without the need to modify them to add this support, the wrappers providing the actual binding can be automatically generated by parsing header files via gen_wrapper utility. All the core OpenSceneGraph libraries have pre built wrappers available for you use. There are some good examples that using or had used osgIntrospection for own purposes. osgDotNet: http://www.openscenegraph.org/projects/osgDotNet osgEdit: http://osgedit.sourceforge.net/ osgLua: http://svn.pplux.com/lab/osgLua/ osgPython: http://mescriva.codemaniacs.com/svn/osgPython/ ... For more information about OSG and the genwrapper tool which is used to generated osgIntrospection wrappers, please visit: http://www.openscenegraph.org http://www.openscenegraph.org/projects/osg/wiki/GenWrapper GenWrapper ---------- Maco Jez's genwrapper is a utiltiy program that reads C++ header files and then automatically generates osgWrapper code from to use alongside osgIntrospection. GenWrapper was created as an 'ad-hoc' tool to support the development of osgIntrospection and it was never intended to be used with anything other than OSG source files, nor it was designed to meet requirements other than the author's ones. GenWrapper was tested on the OSG source tree ONLY and it's not known to work with anything else. If you want to use GenWrapper on your own application's source tree, try to follow OSG coding conventions and directory layout in order to minimize the risk of failure. GENWRAPPER MAY OVERWRITE AND DESTROY YOUR FILES, USE AT YOUR OWN RISK. ALWAYS MAKE BACKUPS!!! Wrappers are generated from a two-phases process. The first phase requires an XML description of source files to be created with Doxygen (GenWrapper can build a Doxyfile for you). In the second phase GenWrapper takes the XML input and generates C++ introspection wrappers and optionally GNU makefiles and VS6 project files. RECENT HISTORY -------------- The osgIntrospection project was maintained in a Subversion repository on http://www.openscenegraph.org/svn/osg/osgIntrospection/trunk and has been forked and renamed to cppintrospection by Alexandre Quessy, Mike Wozniewski and Tristan Matthews in 2011. They packaged it using the GNU Autotools, but left the CMake files there too, as an alternative build system. NOTES ----- GenWrapper only overwrites files whose content has actually changed. Wrapper files are written into output_dir/src/osgWrappers. VS6 project files are written into output_dir/VisualStudio/osgWrappers. Change lists (option -l) are created as three text files for each target directory. Such files are named "removed.gw" (list of removed files), "added.gw" (list of added files) and "modified.gw" (list of modified files). Tested Doxygen version is 1.4.1. GenWrapper may not work with other versions. 2006 - Written by Maco Jez 2010 - Updated by Mike Wozniewski, Tristan Matthews and Alexandre Quessy REPORTING BUGS -------------- http://github.com/sat-metalab/cppintrospection Note that the cppintrospection project is a friendly fork of osgIntrospection, which can be found at the following URL: http://www.openscenegraph.org/svn/osg/osgIntrospection/ Please post on the OpenSceneGraph osg-users mailing list if you want to discuss about cppintrospection. http://www.openscenegraph.org/projects/osg/wiki/MailingLists COPYRIGHT --------- Copyright (C) 2002 Robert Osfield Copyright (C) 2006 Maco Jez Copyright (C) 2006 Wang Rui Copyright (C) 2010 Mike Wozniewski Copyright (C) 2010 Tristan Matthews Copyright (C) 2010 Alexandre Quessy Released under the terms of the OpenSceneGraph Public License, Version 0.0 Notes: the OSGPL is based on the LGPL, with the 4 exceptions laid in the wxWindows.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.