Free Download Mirror 0.5.10
soft82.com
FREE NEWSLETTER
Free Newsletter

Join our low-volume monthly free newsletter that will deliver latest freeware and shareware news straight to your inbox!

Your e-mail
close

USER LOGIN

Username
Password
Mirror screenshot
Developer
Product Homepage
Date Added May 16, 2011, 11:28 GMT
License Free (Freeware)
Last Week / All Time Downloads 1 / 256
Filename / Size
mirror-lib-0.5.10.zip / 1.4MB
OS Support Windows All

Mirror Description

Provides both compile-time and run-time meta-data describing common C++ constructs

The aim of the Mirror library is to provide both compile-time and run-time meta-data describing common C++ constructs like namespaces, types (and as an important special case typedef-ined types), classes and their base classes and member variables, constructors, etc. and to provide uniform and generic interfaces for their introspection.

Because standard C++ provides only a very limited set of meta-information to build upon, the main drawback of this library is, that namespace, types, classes, etc. need to be registered before they can be reflected. However Mirror tries to make the process of registering simple by providing a set of user-friendly registering macros and has the native and many of the other common types, classes, templates and namespaces pre-registered.

Furthermore several tools for automatic / semi-automatic registering are being worked on.

Once registered the meta-data can be reused in a large number of situations.

Mirror is designed with the principle of stratification in mind and tries to be as less intrusive as possible. New or existing classes do not need to be designed to directly support Mirror and no Mirror-related code is necessary in the class' definition, as far as some general guidelines are followed.

Mirror provides a compile-time reflection layer which can be used in compile-time meta-programs and a run-time layer with a similar, but dynamic interface based on the compile-time meta-data.

Features:

* Static and dynamic reflection of the following base-level language constructs:
o namespaces [static / dynamic ]
o types [static / dynamic ]
o typedefs [static ]
o classes [static / dynamic ]
o class templates [static ]

* Static and dynamic range based traversals of:
o namespace members like nested namespaces, classes, typedefs, templates, etc. [static / dynamic ]
o class inheritance including the inheritance type specifier, access specifier, the derived and the base class in the inheritance [static / dynamic ]
o class member variables providing information about the storage class specifier, access specifier, scope, type and name of the member variable [static / dynamic ]
o all class member variables including those inherited from base classes [static / dynamic ]
o class member functions static / dynamic ]
o constructors [static / dynamic ]
o conversion operators [static / dynamic ]
o template parameters [static / dynamic ]
o function parameters including the type and the name of the parameter [static / dynamic ]

* The factory generator utility

* Other compile-time meta-programming utilities

* Name getter functions for all named language constructs like namespaces, types (including derived types like pointers, references, arrays, functions, CV-qualified types and combinations thereof), typedefs, member variables, etc.
o base names without the nested name specifiers [static / dynamic ]
o full names with the nested name specifiers [static / dynamic ]
o local names of nested named constructs which can have parts of the full nested name specifier stripped away based on the use of the Mirror's using directive on the global scope or the local scopes [static / dynamic ]

* Generic functions for getting and setting the value of a class member variable when given a reference to the class to which the member variable belongs.

* Meta-object reflection , categorization and tag dispatching. Tag types for different meta-objects can be used in compile-time function overload or template specialization dispatching and meta-object tag enumerations in run-time branching based on the type of the meta-object.

* Higher-level utilities based on the basic meta-data:
o Factory generators allowing to easily create highly customizable, specialized factory classes which gather the necessary parameter values, pick and call the appropriate constructor in a user specified way (from a GUI, from a RDB dataset, from an XML file, etc.) to create instances of a specified type.

* Annotation of meta-objects with tag types. Various meta objects (currently only types) can be tagged by pre-defined or application-specific tag types which can be used in meta-programs for the triggering of specialized processing.

Planned features

* Higher-level utilities based on the basic meta-data:
o Object inspectors similar to the factory generators utility, which would allow to build classes for inspection of the structure (and values where applicable) of a class, type, namespace, member variable etc. in a user-defined way (in a GUI for example).
o Abstract factory generator, allowing to create instances of different derived classes with a common base class.
o Traversals of namespaces, classes, etc for (de)serialization-like operations.
o Access to semantic data describing the individual language constructs conceptually. This would allow for example to write agents able to use objects of other applications without access to their sources defining these classes.

* Automatic (or semi-automatic) registering, using various common tools and toolchains like (doxygen, gcc2xml, openc++, xslt, etc.) or specialized portable parsers and transformers for generating the source code necessary for registering the base-level constructs with Mirror.
o May be fully automatic in some cases
o May use annotations embedded in comments (like doxygen does)

Mirror 100% CLEAN Certification

Badge

Mirror has been tested by Soft82.com team against viruses, spyware, adware, trojan, backdoors and was found to be 100% clean. Our editors will recheck this software periodically to assure that it remains clean.

View Antivirus Report

Mirror Version History

Product Date Added
Mirror 0.5.10 May 16, 2011 - Latest Version
Mirror 0.5.2 January 19, 2011
Mirror 0.5.1 December 24, 2010
Mirror 0.4.9 October 13, 2010

Mirror Download Button For Your Site

If you want to place a Download Button for Mirror on your website just insert the following code:

download Mirror 0.5.10 download Mirror 0.5.10

If you want a Link to this page you can use one of the logos bellow:

Soft82 logo
Soft82 logo

Mirror User Reviews

Write a Review

Please log in to write a review

New Components & Libraries Software

OWLNext

OWLNext

May 25, 2012

A modern update and extension of Borland's Object Windows Library for writing GUI apps
Comm Operator Pal

Comm Operator Pal

May 25, 2012

A free tool to test and debug RS232 devices that communicated with serial port, TCP/IP, UDP and
Witzend Thumbnail Image Viewer

Witzend Thumbnail Image Viewer

May 24, 2012

Accurately displays miniature thumbnail renderings of graphics files
PyBCI

PyBCI

May 23, 2012

Create a Brain Comp. Interface (BCI) and herewith to get EEG data online
TMS Panels Pack

TMS Panels Pack

May 23, 2012

A collection of panels, containers & tabs to make your applications stand out from the rest
SWI-Prolog Portable

SWI-Prolog Portable

May 22, 2012

A comprehensive Free Software Prolog environment, licensed under the Lesser GNU Public License
Nevron User Interface for .NET

Nevron User Interface for .NET

May 22, 2012

Professional User Interface component suite for Windows Forms applications
Calibre

Calibre

May 21, 2012

E-book library management application
ShareWatcher

ShareWatcher

May 21, 2012

ShareWatcher logs and notifies you when others access your shared folders
IntelliJ IDEA

IntelliJ IDEA

May 21, 2012

A code-centric IDE focused on developer productivity
Scikit Learn

Scikit Learn

May 17, 2012

scikits.learn is a python library for machine learning
Fast File Download ActiveX

Fast File Download ActiveX

May 17, 2012

An ActiveX component(ActiveX control) that can fast download files from the Internet
.Net Grid

.Net Grid

May 17, 2012

Productive and robust hierarchical grid with one of the best object models
Excel to PDF .Net

Excel to PDF .Net

May 17, 2012

A standalone component which allows any .Net application get professional export of Excel XLS files
Virtual 8085

Virtual 8085

May 16, 2012

A tool which enables students to run programs written in 8085 assembly language
Windows

dbExpress driver for MySQL

May 16, 2012

A driver that provides fast access to MySQL databases.
GUI Design Studio Express

GUI Design Studio Express

May 16, 2012

A graphical user interface design tool for Microsoft Windows
Windows

PG4UW

May 15, 2012

Common control program for Windows for all ELNEC programmers
dotConnect for Oracle Express Edition

dotConnect for Oracle Express Edition

May 15, 2012

An enhanced ORM enabled data provider for Oracle that builds on ADO.NET
Windows

Wireless Communication Library MFC Developer

May 15, 2012

Powerful C++ SDK which expands your applications with Bluetooth, IrDA, WiFi and Serial

Last 7 Days Most Downloaded Components & Libraries Products

Aircrack-ng GUI

Aircrack-ng GUI

165 downloads

This is mainly just an interface tweak for Aircrack-ng
Microsoft Visual C++ 2008 Redistributable Package

Microsoft Visual C++ 2008 Redistributable Package

51 downloads

Installs runtime components of Visual C++ Libraries required to run 64-bit applications developed...
C++dbc

C++dbc

45 downloads

A library to help you with database management.
Windows

ActiveX Download Control

41 downloads

Support BreakPoint download,a client ActiveX control easy to realize the download batch files from...
Microsoft Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK

Microsoft Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK

38 downloads

Restore the Visual C++ compilers and libraries that may have been removed
Windows Imaging Component

Windows Imaging Component

28 downloads

Provides WIC-enabled applications to display and edit any image format
Grasshopper

Grasshopper

27 downloads

A Subversion reporting tool
Windows

Quake I port for Nokia Series 60 src

26 downloads

Quake I port for Nokia Series 60 source code
Calibre

Calibre

25 downloads

E-book library management application
Windows

Headers and Libraries for Windows Internet Explorer 9

23 downloads

Develop Windows applications that use Windows Internet Explorer 9

All Time Most Downloaded Components & Libraries Products

Aircrack-ng GUI

Aircrack-ng GUI

16,002 downloads

This is mainly just an interface tweak for Aircrack-ng
Microsoft Visual C++ 2008 Redistributable Package

Microsoft Visual C++ 2008 Redistributable Package

31,672 downloads

Installs runtime components of Visual C++ Libraries required to run 64-bit applications developed...
C++dbc

C++dbc

16,731 downloads

A library to help you with database management.
Windows

ActiveX Download Control

22,265 downloads

Support BreakPoint download,a client ActiveX control easy to realize the download batch files from...
Microsoft Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK

Microsoft Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK

3,644 downloads

Restore the Visual C++ compilers and libraries that may have been removed
Windows Imaging Component

Windows Imaging Component

35,568 downloads

Provides WIC-enabled applications to display and edit any image format
Grasshopper

Grasshopper

1,765 downloads

A Subversion reporting tool
Windows

Quake I port for Nokia Series 60 src

7,846 downloads

Quake I port for Nokia Series 60 source code
Calibre

Calibre

5,756 downloads

E-book library management application
Windows

Headers and Libraries for Windows Internet Explorer 9

3,577 downloads

Develop Windows applications that use Windows Internet Explorer 9
Icon
link to us | site map | submit software | advertise | contact | privacy policy
Copyright © 2006 - 2012 SOLUTIONS AND CONSULTING S.R.L. - All rights reserved.