tekglobalvars.h

00001 /***************************************************************************
00002  *   Copyright (C) 2005 by Kevin McBride                                   *
00003  *   kevin@planetsaphire.com                                               *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU Library General Public License as       *
00007  *   published by the Free Software Foundation; either version 2 of the    *
00008  *   License, or (at your option) any later version.                       *
00009  *                                                                         *
00010  *   This program is distributed in the hope that it will be useful,       *
00011  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00012  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00013  *   GNU General Public License for more details.                          *
00014  *                                                                         *
00015  *   You should have received a copy of the GNU Library General Public     *
00016  *   License along with this program; if not, write to the                 *
00017  *   Free Software Foundation, Inc.,                                       *
00018  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00019  ***************************************************************************/
00020 #ifndef TEKGLOBALVARS_H
00021 #define TEKGLOBALVARS_H
00022 
00023 
00024 #error This file can not be included in any project.
00025 
00026 
00037 class TekGlobalVars{
00038 public:
00039     TekGlobalVars();
00040 
00056     ~TekGlobalVars();
00057     TEKLTI_DECLSPEC TEKERR TekFileCreate(
00058       TekFileType FileType,
00059       TekFile ** RetVal,
00060       uchar_t * FileName = (uchar_t *)NULL
00061     );
00062 
00078     TEKLTI_DECLSPEC TEKERR TekUserInfoCreate(
00079       struct TekUserInfo * UserInfo,
00080       TekUser ** RetVal,
00081       TekUserType UserType = TekUserType_Any
00082     );
00083 
00103         TEKERR TekStdCheckAndRecieveProcessorInfoIntel(struct TekStdProcessorInfoIntel * ProcessorInfoArray,
00104       size_t ProcessorInfoArrayCount,
00105       TEKSTDPROCESSORINFO_FAIL_CALLBACK * CallbackFunction);
00106 
00111 TEKLTI_DECLSPEC TEKERR TekStdCreateInstance (
00112       CPTekStdCIInput InterfaceStructs,
00113       size_t InterfaceStructCount,
00114       void ** InstanceArray,
00115       size_t InstanceArrayCount,
00116       const uuid_t * UUIDArray,
00117       size_t UUIDArrayCount,
00118       unsigned int Flags,
00119       PTekStdVersion VersionStruct
00120 );
00121 
00133 TEKLTI_DECLSPEC TEKERR TekStdGetGlobalVariables ( 
00134       struct TekStdGlobalVars * RetVal
00135 );
00136 
00142 TEKLTI_DECLSPEC TEKERR TekStdGetLibraryVersion (
00143       PTekStdVersion * VersionStruct,
00144       size_t VersionStructCount
00145 )
00146 {
00147       return TEKERR_NOTIMPL;
00148 }
00149 
00161 TEKLTI_DECLSPEC uchar_t * char2uchar ( const char * src );
00162 
00176 TEKLTI_DECLSPEC uchar_t * char2ucharlen ( const char * src, size_t len );
00177 
00189 TEKLTI_DECLSPEC uchar_t * uchardup ( const uchar_t * src );
00190 
00204 TEKLTI_DECLSPEC void ucharempty ( uchar_t * uchrtofree );
00205 
00211 TEKLTI_DECLSPEC char * uchar2char ( const uchar_t * uchr );
00212 
00223 TEKLTI_DECLSPEC void mkucharnull ( uchar_t * uchr, uint32_t extradw );
00224 
00225 };
00226 
00227 #endif
00228 
00229 
SourceForge.net Logo  Technical Library Template Interface Project Page