Home | History | Annotate | Download | only in udp
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef NET_UDP_UDP_SOCKET_H_
      6 #define NET_UDP_UDP_SOCKET_H_
      7 #pragma once
      8 
      9 #include "build/build_config.h"
     10 
     11 #if defined(OS_WIN)
     12 #include "net/udp/udp_socket_win.h"
     13 #elif defined(OS_POSIX)
     14 #include "net/udp/udp_socket_libevent.h"
     15 #endif
     16 
     17 namespace net {
     18 
     19 // UDPSocket
     20 // Accessor API for a UDP socket in either client or server form.
     21 //
     22 // Client form:
     23 // In this case, we're connecting to a specific server, so the client will
     24 // usually use:
     25 //       Connect(address)    // Connect to a UDP server
     26 //       Read/Write          // Reads/Writes all go to a single destination
     27 //
     28 // Server form:
     29 // In this case, we want to read/write to many clients which are connecting
     30 // to this server.  First the server 'binds' to an addres, then we read from
     31 // clients and write responses to them.
     32 // Example:
     33 //       Bind(address/port)  // Binds to port for reading from clients
     34 //       RecvFrom/SendTo     // Each read can come from a different client
     35 //                           // Writes need to be directed to a specific
     36 //                           // address.
     37 #if defined(OS_WIN)
     38 typedef UDPSocketWin UDPSocket;
     39 #elif defined(OS_POSIX)
     40 typedef UDPSocketLibevent UDPSocket;
     41 #endif
     42 
     43 }  // namespace net
     44 
     45 #endif  // NET_UDP_UDP_SOCKET_H_
     46