include/ns_host.h

00001 /* -*- C++ -*- */
00002 /*
00003   netstream, set of classes for TCP/IP networking
00004   Copyright (c) 2006, Jan Bartipan < barzto at gmail dot com >
00005   All rights reserved.
00006   
00007   Redistribution and use in source and binary forms, with or without 
00008   modification, are permitted provided that the following conditions 
00009   are met:
00010   
00011   - Redistributions of source code must retain the above copyright 
00012   notice, this list of conditions and the following disclaimer.
00013   - Redistributions in binary form must reproduce the above copyright 
00014   notice, this list of conditions and the following disclaimer in 
00015   the documentation and/or other materials provided with the 
00016   distribution.
00017   - Neither the names of its contributors may be used to endorse or 
00018   promote products derived from this software without specific 
00019   prior written permission.
00020   
00021   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
00022   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
00023   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
00024   FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
00025   COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
00026   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
00027   BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
00028   LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
00029   CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
00030   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
00031   WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
00032   POSSIBILITY OF SUCH DAMAGE.
00033 
00034  */
00035 
00036 #ifndef __NS_HOST_H
00037 #define __NS_HOST_H
00038 
00039 #include "ns_stdafx.h"
00040 #include "ns_exception.h"
00041 
00042 namespace ns
00043 {
00047    class HostException: public Exception
00048    {
00049       public:
00053          HostException(): Exception("HostException unknow host",""){};
00054 
00059          HostException(char* host): Exception("HostException unknow host['%s']",host){};
00060    };
00061 
00065    class Host
00066    {
00067       private:
00071          struct sockaddr_in sin;
00072       public:
00076          Host();
00077 
00082          Host(struct sockaddr_in s);
00083 
00089          Host(char* host, unsigned int port);
00090 
00095          void getSin(struct sockaddr_in *s);
00096 
00097    };
00098 
00099 } // end of namespace ns
00100 
00101 #endif

Generated on Mon Aug 6 09:36:19 2007 for NetStreamlibrary by  doxygen 1.5.1