Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
JNetwork.cc File Reference

Example program to print IP address. More...

#include <string>
#include <iostream>
#include <iomanip>
#include "JSystem/JNetwork.hh"
#include "Jeep/JParser.hh"
#include "Jeep/JMessage.hh"

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 

Detailed Description

Example program to print IP address.

Author
mdejong

Definition in file JNetwork.cc.

Function Documentation

int main ( int  argc,
char *  argv[] 
)

Definition at line 17 of file JNetwork.cc.

18 {
19  using namespace std;
20 
21  string host_name;
22 
23  try {
24 
25  JParser<> zap("Example program to print IP address.");
26 
27  zap['H'] = make_field(host_name) = "localhost";
28 
29  zap(argc, argv);
30  }
31  catch(const exception &error) {
32  FATAL(error.what() << endl);
33  }
34 
35 
36  using namespace JPP;
37 
38  int ip = getIPnumber(host_name);
39 
40  cout << "IP number " << ip << endl;
41  cout << "IP address " << getIPaddress(ip) << endl;
42  cout << "host name " << getHostname(ip) << endl;
43  cout << "subaddress "
44  << dec << getSubaddress(ip) << " (dec)" << ' '
45  << hex << getSubaddress(ip) << " (hex)" << endl;
46 }
int getIPnumber(const std::string &host_name)
Get IP number.
Definition: JNetwork.hh:115
Utility class to parse command line options.
Definition: JParser.hh:1410
std::string getIPaddress(const int ip)
Get IP address (decimal-dot notation).
Definition: JNetwork.hh:150
unsigned short getSubaddress(const int ip)
Get host identifier within network.
Definition: JNetwork.hh:186
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition: JParser.hh:1836
std::string getHostname()
Get host name.
Definition: JNetwork.hh:75
#define FATAL(A)
Definition: JMessage.hh:65