summaryrefslogtreecommitdiffhomepage
path: root/NetEx/NetHost.h
blob: c45f04c9cbad1d3eb9e6684daada70126eaa2ce1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/*  Starshatter: The Open Source Project
    Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors
    Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
    Copyright (c) 1997-2006, Destroyer Studios LLC.

    AUTHOR:       John DiCamillo


    OVERVIEW
    ========
    Network Host
*/

#ifndef NetHost_h
#define NetHost_h

#include "List.h"
#include "NetAddr.h"
#include "Text.h"


class NetHost
{
public:
    static const char* TYPENAME() { return "NetHost"; }

    NetHost();
    NetHost(const char* host_addr);
    NetHost(const NetHost& n);
    ~NetHost();

    const char*    Name();
    NetAddr        Address();

    List<Text>&    Aliases()      { return aliases; }
    List<NetAddr>& AddressList()  { return addresses; }

private:
    void Init(const char* host_name);

    Text           name;
    List<Text>     aliases;
    List<NetAddr>  addresses;
};


#endif  // NetHost_h