FACT++  1.0
int main ( int  argc,
const char *  argv[] 
)

Definition at line 109 of file dimctrl.cc.

References Configuration::DoParse(), Configuration::Get(), Configuration::GetName(), Configuration::Has(), PrintHelp(), PrintUsage(), Configuration::Remove(), Configuration::SetPrintUsage(), Main::SetupConfiguration(), and SetupConfiguration().

110 {
111  //chmod(argv[0], 04775);
112 
113  Configuration conf(argv[0]);
114  conf.SetPrintUsage(PrintUsage);
116  SetupConfiguration(conf);
117 
118  if (!conf.DoParse(argc, argv, PrintHelp))
119  return 127;
120 
121  if (conf.Get<bool>("force-console") && !conf.Has("console"))
122  throw runtime_error("--force-console must be used with --console/-c");
123 
124 #if BOOST_VERSION < 104600
125  const string fname = fs::path(conf.GetName()).filename();
126 #else
127  const string fname = fs::path(conf.GetName()).filename().string();
128 #endif
129 
130  if (fname=="dimserver" && !conf.Get<bool>("force-console"))
131  conf.Remove("console");
132 
133  if (!conf.Has("console"))
134  return RunShell<RemoteStream>(conf);
135 
136  if (conf.Get<int>("console")==0)
137  return RunShell<RemoteShell>(conf);
138  else
139  return RunShell<RemoteConsole>(conf);
140 }
void SetupConfiguration(Configuration &conf)
Definition: Main.h:25
Commandline parsing, resource file parsing and database access.
Definition: Configuration.h:9
void PrintHelp()
Definition: dimctrl.cc:87
void SetupConfiguration(Configuration &conf)
Definition: dimctrl.cc:28
void PrintUsage()
Definition: dimctrl.cc:70

+ Here is the call graph for this function: