Class CSpoofBase Base ClassesData ItemsConstructorsDestructorsFunctionsCustom CodeGo to hierarchy chart    Prev page: Custom Code in Source After IncludesNext page: m_bInitialized    Show member index
Class Declared in:
SpoofBase.h

'Overview' icon -- Shortcut to top of page. Overview

Copyright (c) 2000-2003 Barak Weichselbaum <barak@komodia.com> All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS `AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Contact info:

Site:                  http://www.komodia.com Main contact:          barak@komodia.com For custom projects, consulting, or other paid services:         sales@komodia.com

---------------------------------------------------------------------------

Handles basic errors

Hierarchy Chart Hierarchy Chart

'Base Classes' icon -- Shortcut to top of page. Base Classes

Public base class CErrorHandler

'Data Items' icon -- Shortcut to top of page. Data Items

Private data static BOOL m_bInitialized Are we initialized?
Private data static BOOL m_bMultiThreaded Are we multithreaded
Private data mutable int m_iLastError Last error we had
Protected data static CGenericCriticalSection * m_pCSection Our critical section
Private data static CSpoofBase * m_pShutdownClass Our global shutdown class
Private data static CManagedThread * m_pThread Our managed thread, for the no map init
Private data static int m_ulNumberOfThreads Our number of threads

'Constructors' icon -- Shortcut to top of page. Constructors

Public constructor

CSpoofBase()

Ctor and Dtor
Public constructor

CSpoofBase( const CSpoofBase& rBase )

'Destructors' icon -- Shortcut to top of page. Destructors

Public destructor virtual

~CSpoofBase()

'Functions' icon -- Shortcut to top of page. Functions

Public function static int

GetErrorCode()

Get the error code for compatability returns SOCKET_ERROR for Win32
Public function static CGenericCriticalSection *

GetGlobalCriticalSection()

Get the critical section
Public function int

GetLastError() const

Get the last error
Public function static unsigned long

GetNumberOfThreads()

Get the number of threads
Public function int

GetSystemLastError() const

Get the system last error (needed for threading)
Public function static BOOL

InitializeSockets( BOOL bMultiThreaded=TRUE, unsigned long ulNumberOfThreads=10 )

Initialize the sockets Using this method requires the application to have an active message map If a message map is not desired then use the method: InitializeSocketsNoMap bMultiThreaded - Do we want multithreaded support ulNumberOfThreads - Number of threads to allocate
Public function static BOOL

InitializeSocketsNoMap( BOOL bMultiThreaded=TRUE, unsigned long ulNumberOfThreads=10 )

Initialize the sockets, without requiring a message map bMultiThreaded - Do we want multithreaded support ulNumberOfThreads - Number of threads to allocate
Private function static DWORD

InitProc( CGenericEvent* pExitEvent, LPVOID lpData )

Our thread proc
Public function static BOOL

IsInitialized()

Are we initialized
Public function static BOOL

IsMultiThreaded()

Are we multithreaded
Public function static std::string

LongToStdString( unsigned long ulAddr )

Convert long to string but as a standard string (thread safe)
Public function static char FAR *

LongToString( unsigned long ulAddr )

Convert long to string (Not thread safe)
Protected function virtual void

NotifyShutdown()

Shutdown notifier
Protected function void

RegisterShutdown( CSpoofBase* pBase )

Register shutdown class
Protected function void

SetLastError( const std::string& rMethod ) const

Set the socket last error
Protected function void

SetLastError( const std:: string& rMethod, int iErrorCode ) const

Public function static BOOL

ShutdownSockets()

Shutdown the sockets
Public function static unsigned long

StringToLong( const std::string& rAddress )

Converts a string to long

'Custom Code' icon -- Shortcut to top of page. Custom Code

'Implementation Details' icon -- Shortcut to top of page. Implementation Details

File(s)
C:\dev\Komodia\SpoofBase.cpp
C:\dev\Komodia\SpoofBase.h
Header Includes
winsock2.h     
ws2tcpip.h     
ErrorHandler.h     
Source Includes
stdafx.h     for precompiled header directive
SpoofBase.h     
ErrorHandlerMacros.h     
OSManager.h     
GenericCriticalSection.h     
GenericEvent.h     
ManagedThread.h     
LibConfig.h     
memory     
Owner
tcpip4
Last Modified
19/02/2003 19:54:59 PM

Get Surveyor!This web site was generated using Surveyor V4.50.811.1.  Click here for more information. Site content copyright © 2003 Komodia LTD.. See the About page for additional notices. This page last updated: 24 Feb 2003.