00001 /* 00002 * Copyright (C) 2006, Jose Renato Santos. 00003 * 00004 * This file may be distributed under the terms of the Q Public License 00005 * as defined by Trolltech AS of Norway and appearing in the file 00006 * LICENSE.QPL included in the packaging of this file. 00007 * 00008 * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING 00009 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00010 * PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, 00011 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 00012 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 00013 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 00014 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 00015 * 00016 */ 00017 00018 /////////////////////////////////////////////////////////////////////////////// 00019 // extern.h : Extern definitions of global variables 00020 /////////////////////////////////////////////////////////////////////////////// 00021 00022 #ifndef __EXTERN_H_ 00023 #define __EXTERN_H_ 00024 00025 #include "config.h" 00026 #include "request.h" 00027 #include "msgqueue.h" 00028 #include "routerinterface.h" 00029 #include "clientinterface.h" 00030 #include "storagedevice.h" 00031 #include "NetMgr.h" 00032 #include "LogRotation.h" 00033 #include "SearchLogs.h" 00034 00035 // Current configuration parameters 00036 extern StorageConfig Config; 00037 00038 // Request Manager 00039 extern CRequestManager RequestManager; 00040 00041 // Router Message Manager 00042 extern CMsgManager MsgManager; 00043 00044 // Router Interface 00045 extern CRouterInterface Router; 00046 00047 // Client Interface 00048 extern CClientInterface Client; 00049 00050 // Pointer to Storage Devices vector (number of elements in vector is 00051 // number of disks in Config 00052 extern CStorageDevice* Device; 00053 00054 // NetManager 00055 // Manages network to communicate with client 00056 extern NetMgr NetManager; 00057 00058 // New class used to store all the send package information 00059 extern CLogRotation SentPackagesLog; 00060 00061 // New class used to search logs managed by SentPackagesLog object 00062 extern CSearchLogs SearchPackagesLogs; 00063 00064 // New network managment class also used to communicate with client 00065 extern CNetInterface NetInterface; 00066 00067 #endif // __EXTERN_H_