Savarese Software Research Corporation
InitializeLibrary.h
Go to the documentation of this file.
00001 /*
00002  * Copyright 2006-2009 Savarese Software Research Corporation
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     https://www.savarese.com/software/ApacheLicense-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00023 #ifndef __SSRC_WSPR_INITIALIZE_LIBRARY_H
00024 #define __SSRC_WSPR_INITIALIZE_LIBRARY_H
00025 
00026 #include <ssrc/wispers-packages.h>
00027 
00028 __BEGIN_NS_SQLITE3_INCLUDE
00029 #include <sqlite3.h>
00030 __END_NS_SQLITE3_INCLUDE
00031 
00032 __BEGIN_NS_SSRC_WSPR_DATABASE
00033 
00048 struct InitializeLibrary {
00052   InitializeLibrary() {
00053     SQLite3::sqlite3_initialize();
00054   }
00058   ~InitializeLibrary() {
00059     SQLite3::sqlite3_shutdown();
00060   }
00061 };
00062 
00063 // A macro that can be used in conjunction with
00064 // WSPR_CUSTOM_SERVICE_MAIN_WITH_INIT to initialize SQLite in a service program.
00065 #define WSPR_DB_INIT_LIBRARY \
00066   NS_SSRC_WSPR_DATABASE::InitializeLibrary WSPR_DB_INIT_LIBRARY_INSTANCE;
00067 
00068 __END_NS_SSRC_WSPR_DATABASE
00069 
00070 #endif

Savarese Software Research Corporation
Copyright © 2006-2011 Savarese Software Research Corporation. All rights reserved.