haiku/headers/os/net/NetworkRoster.h
Axel Dörfler ff1b1ac7ff * Introduced first draft of a C++ network API. Comments welcome (I haven't
started implementing it yet, anyway).
* Note that BNetworkAddress is supposed to replace BNetAddress -- the latter
  does not provide enough space for a struct sockaddr_storage, and has a very
  IPv4 specific and incapable API, anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-06 08:08:02 +00:00

40 lines
812 B
C++

/*
* Copyright 2010, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _NETWORK_ROSTER_H
#define _NETWORK_ROSTER_H
#include <SupportDefs.h>
class BMessenger;
class BNetworkInterface;
class BNetworkRoster {
public:
BNetworkRoster& Default();
uint32 CountInterfaces();
BNetworkInterface* InterfaceAt(uint32 index);
status_t AddInterface(
const BNetworkInterface& interface);
status_t RemoveInterface(
const BNetworkInterface& interface);
status_t RemoveInterfaceAt(uint32 index);
status_t StartWatching(const BMessenger& target,
uint32 eventMask);
void StopWatching(const BMessenger& target);
private:
BNetworkRoster();
~BNetworkRoster();
};
#endif // _NETWORK_ROSTER_H