Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# deSlaveServer.hpp

Go to the documentation of this file.

    00001 ///////////////////////////////////////////////////////////////////////////////
    00002 /// @file deSlaveServer.hpp
    00003 ///
    00004 /// @brief
    00005 ///
    00006 /// @author trajar
    00007 ///
    00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the
    00009 /// contents of this file is subject to the Destiny3D Member License which
    00010 /// can be found at http://www.destiny3d.com.  Any other usage is prohibited.
    00011 ///
    00012 /// This file is distributed "AS IS" without warranty of any kind.  Novus
    00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file
    00014 /// for any particular purpose.
    00015 ///
    00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved.
    00017 ///
    00018 /// <hr>
    00019 ///                                 Change History
    00020 /// <hr>
    00021 ///
    00022 /// @date Jun 2002
    00023 /// @author trajar
    00024 /// @remarks Creation
    00025 ///
    00026 ///////////////////////////////////////////////////////////////////////////////
    00027
    00028 #ifndef _DESLAVESERVER_HPP
    00029 #define _DESLAVESERVER_HPP
    00030
    00031 #ifndef     _DENET_HPP
    00032  #include   "deNet.hpp"
    00033 #endif
    00034
    00035 #ifndef     _DESERVER_HPP
    00036  #include   "deServer.hpp"
    00037 #endif
    00038
    00039 class deNetResource;
    00040 #include    <VECTOR>
    00041 typedef std::vector<deNetResource*> aResources;
    00042
    00043 typedef class DENET_API deSlaveServer : public deServer
    00044 {
    00045 public:
    00046
    00047     struct  SlaveInfo
    00048     {
    00049         bool    m_bConnectDirectToServer;
    00050     };
    00051
    00052     deSlaveServer(void);
    00053     virtual ~deSlaveServer(void);
    00054
    00055     eNetError           AttachToMaster( deNetAddress * pAddress, DWORD pFlags = NULL );
    00056
    00057     const SlaveInfo *   GetSlaveInfo(void)      { return &m_SlaveInfo; }
    00058
    00059     virtual deConnection *  GetConnectionByUser( hNetUser pUser );
    00060
    00061 protected:
    00062
    00063     //-------------------------------------------------------------------------------------
    00064     // Leave these alone, or call in a overidden method
    00065     //-------------------------------------------------------------------------------------
    00066     virtual eNetError   OnInit( int pType, DWORD dwFlags = NULL );
    00067     virtual eNetError   OnDestroy( DWORD dwFlags = NULL );
    00068
    00069 private:
    00070
    00071     deConnection *  m_MasterServer;
    00072     aResources      m_aResources;
    00073     SlaveInfo       m_SlaveInfo;
    00074
    00075 } deSlaveServer, *pdeSlaveServer;
    00076
    00077 #endif