haiku/headers/os/add-ons/network_settings/NetworkProfile.h

57 lines
1.0 KiB
C
Raw Normal View History

/*
* Copyright 2004-2015 Haiku Inc. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _NETWORK_PROFILE_H
#define _NETWORK_PROFILE_H
#include <Entry.h>
#include <Path.h>
namespace BNetworkKit {
class BNetworkProfile {
public:
BNetworkProfile();
BNetworkProfile(const char* path);
BNetworkProfile(const entry_ref& ref);
BNetworkProfile(const BEntry& entry);
virtual ~BNetworkProfile();
status_t SetTo(const char* path);
status_t SetTo(const entry_ref& ref);
status_t SetTo(const BEntry& entry);
bool Exists();
const char* Name();
status_t SetName(const char* name);
bool IsDefault();
bool IsCurrent();
status_t MakeCurrent();
status_t Delete();
static BNetworkProfile* Default();
static BNetworkProfile* Current();
private:
BEntry fEntry;
BPath fPath;
bool fIsDefault;
bool fIsCurrent;
const char* fName;
static BDirectory* fProfilesRoot;
};
} // namespace BNetworkKit
#endif // _NETWORK_PROFILE_H