view Core/SQLite/README.txt @ 3489:e7723a39adf8

Fixed alignment issue in Toolbox::DetectEndianness() + made the internal logger use an std::stringstream so that manipulators like "std::hex" are supported (when using ORTHANC_ENABLE_LOGGING_PLUGIN or ORTHANC_ENABLE_LOGGING_STDIO)
author Benjamin Golinvaux <bgo@osimis.io>
date Sat, 10 Aug 2019 13:40:08 +0200
parents 9b9026560a5f
children
line wrap: on
line source

Introduction
============

The code in this folder is a standalone object-oriented wrapper around
SQLite3. It is derived from the code of Chromium:

http://src.chromium.org/viewvc/chrome/trunk/src/sql/
http://maxradi.us/documents/sqlite/


Main differences with Chromium
==============================

* The reference counting mechanism has been reimplemented to make it 
  simpler.
* The OrthancException class is used for the exception mechanisms.
* A statement is always valid (is_valid() always return true).
* The classes and the methods have been renamed to meet Orthanc's
  coding conventions.


Reuse in another software
=========================

To use the Orthanc SQLite wrapper in another project than Orthanc, you
just have to define the "ORTHANC_SQLITE_STANDALONE" macro.

All the C++ exceptions generated by the wrapper will be objects of the
class "::Orthanc::SQLite::OrthancSQLiteException", that derives from
the standard exception class "::std::runtime_error".


Licensing
=========

The code in this folder is licensed under the 3-clause BSD license, in
order to respect the original license of the code.

It is pretty straightforward to extract the code from this folder and
to include it in another project.