PhoenixClockMock  2.0.0
Tool to manipulate mock of clock (split, merge and get info)
main_info.cpp
Go to the documentation of this file.
1 /***************************************
2  Auteur : Pierre Aubert
3  Mail : pierre.aubert@lapp.in2p3.fr
4  Licence : CeCILL-C
5 ****************************************/
6 
7 #include "OptionParser.h"
8 
9 #include "phoenix_clock_mock.h"
10 
12 
15  OptionParser parser(true, __PROGRAM_VERSION__);
16  parser.setExampleLongOption("phoenix_clock_mock_info --input=file.clockmock");
17  parser.setExampleShortOption("phoenix_clock_mock_info -i file2.mock file2.clockmock");
18 
19  parser.addOption("input", "i", OptionType::FILENAME, true, "List of input clock mock to get the info");
20  return parser;
21 }
22 
24 
27 bool infoMock(const std::vector<PString> & vecInputFile){
28  bool b(true);
29  for(std::vector<PString>::const_iterator itFile(vecInputFile.begin()); itFile != vecInputFile.end() && b; ++itFile){
30  VecTime vecTmpFile;
31  if(data_load(*itFile, vecTmpFile)){
32  size_t nbMessageIn(vecTmpFile.size());
33  std::cout << "Mock '"<<(*itFile)<<"' : nbClockTime = " << nbMessageIn << std::endl;
34  }else{
35  b = false;
36  }
37  }
38  return b;
39 }
40 
41 int main(int argc, char** argv){
43  parser.parseArgument(argc, argv);
44  const OptionMode & defaultMode = parser.getDefaultMode();
45  std::vector<PString> vecInputFile;
46  defaultMode.getValue(vecInputFile, "input");
47  return infoMock(vecInputFile) - 1;
48 }
49 
50 
std::vector< time_t > VecTime
Definition: PClockMock.h:12
Describe a mode in the program arguments.
Definition: OptionMode.h:13
bool getValue(T &value, const PString &optionName) const
Get the value of the option.
Parse the options passed to a program.
Definition: OptionParser.h:15
void parseArgument(int argc, char **argv)
Parse the arguments passed to the program.
void addOption(const PString &longOption, const PString &shortOption, OptionType::OptionType optionType, bool isRequired, const PString &docString)
Add an option in the OptionParser.
void setExampleShortOption(const PString &example)
Set the example usage of the program.
void setExampleLongOption(const PString &example)
Set the example usage of the program.
const OptionMode & getDefaultMode() const
Get default mode.
bool data_load(FILE *iter, T &data)
Load data from a message.
Definition: data_file.h:39
bool infoMock(const std::vector< PString > &vecInputFile)
Merge mock files.
Definition: main_info.cpp:27
int main(int argc, char **argv)
Definition: main_info.cpp:41
OptionParser createOptionParser()
Create the OptionParser of this program.
Definition: main_info.cpp:14