Corrade

cor­rade (v.) — “To scrape to­geth­er, to gath­er to­geth­er from var­i­ous sources”

Cor­rade is mul­ti­plat­form util­i­ty li­brary writ­ten in C++11/C++14, orig­i­nal­ly de­vel­oped for Kom­pas and now used in Mag­num.

Supported platforms

  • Lin­ux and em­bed­ded Lin­ux
  • Win­dows
  • Mac OS X (thanks to David Lin)
  • Google Chrome (through Na­tive Client, both newlib and glibc toolchains are sup­port­ed)
  • HTM­L5/JavaScript (through Em­scripten)
  • An­droid

Features

  • Sig­nal/slot con­nec­tion li­brary with com­pile-time ar­gu­ment check­ing.
  • Plug­in man­age­ment li­brary with stat­ic and dy­nam­ic plug­ins and de­pen­den­cy han­dling.
  • Easy-to-use unit test frame­work and ex­ten­si­ble de­bug­ging out­put.
  • Var­i­ous util­i­ties to ease mul­ti­plat­form de­vel­op­ment.

You might want to read al­so of­fi­cial project an­nounce­ment or notes from lat­est May 2015 re­lease.

Documentation, getting started

Doc­u­men­ta­tion is avail­able for online viewing, you can al­so gen­er­ate it di­rect­ly from the source code, see above down­load in­struc­tions for more in­for­ma­tion.

License

Cor­rade is li­censed un­der MIT/Ex­pat li­cense:

Copy­right © 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Vladimír Von­druš <mosra@cen­trum.cz>

Per­mis­sion is here­by grant­ed, free of charge, to any per­son ob­tain­ing a copy of this soft­ware and as­so­ci­at­ed doc­u­men­ta­tion files (the “Soft­ware”), to deal in the Soft­ware with­out re­stric­tion, in­clud­ing with­out lim­i­ta­tion the rights to use, copy, mod­i­fy, merge, pub­lish, dis­trib­ute, sub­li­cense, and/or sell copies of the Soft­ware, and to per­mit per­sons to whom the Soft­ware is fur­nished to do so, sub­ject to the fol­low­ing con­di­tions:

The above copy­right no­tice and this per­mis­sion no­tice shall be in­clud­ed in all copies or sub­stan­tial por­tions of the Soft­ware.

THE SOFT­WARE IS PRO­VID­ED “AS IS”, WITH­OUT WAR­RAN­TY OF ANY KIND, EX­PRESS OR IM­PLIED, IN­CLUD­ING BUT NOT LIM­IT­ED TO THE WAR­RANTIES OF MER­CHANTABIL­I­TY, FIT­NESS FOR A PAR­TIC­U­LAR PUR­POSE AND NON­IN­FRINGE­MENT. IN NO EVENT SHALL THE AU­THORS OR COPY­RIGHT HOLD­ERS BE LI­ABLE FOR ANY CLAIM, DAM­AGES OR OTH­ER LI­A­BIL­I­TY, WHETHER IN AN AC­TION OF CON­TRACT, TORT OR OTH­ER­WISE, ARIS­ING FROM, OUT OF OR IN CON­NEC­TION WITH THE SOFT­WARE OR THE USE OR OTH­ER DEAL­INGS IN THE SOFT­WARE.