OnixS C++ CME iLink 3 Binary Order Entry Handler  1.18.0
API Documentation
AuditTrailGenerator.h
Go to the documentation of this file.
1 /*
2 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3 *
4 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5 * and international copyright treaties.
6 *
7 * Access to and use of the software is governed by the terms of the applicable OnixS Software
8 * Services Agreement (the Agreement) and Customer end user license agreements granting
9 * a non-assignable, non-transferable and non-exclusive license to use the software
10 * for it's own data processing purposes under the terms defined in the Agreement.
11 *
12 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13 * of this source code or associated reference material to any other location for further reproduction
14 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15 *
16 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17 * the terms of the Agreement is a violation of copyright law.
18 */
19 #pragma once
20 
22 
23 namespace OnixS {
24 namespace CME {
25 namespace iLink3 {
26 namespace Tools {
27 
28 /// Audit Trail Spreadsheet Generator
30 {
31 public:
32  /**
33  * Constructor.
34  *
35  * \param fileName A log file file to analyze.
36  * \param cmeTradeDayStartTimeUtc Trade day start time in UTC.
37  * \param outputFieldDelimiter Output field delimiter.
38  * \param outputFilenameExtension Output filename extension.
39  */
41  const std::string& fileName
42  , const Messaging::Timestamp& cmeTradeDayStartTimeUtc = Messaging::Timestamp(1970, Messaging::Month::January, 1, 0, 0, 0)
43  , char outputFieldDelimiter = ','
44  , const char* outputFilenameExtension = "csv"
45  );
46 
47  /**
48  * Constructor.
49  *
50  * \param fileName A log file to analyze.
51  * \param outputPath Output file path.
52  * \param outputBaseName Output file base name.
53  * \param cmeTradeDayStartTimeUtc Trade day start time in UTC.
54  * \param outputFieldDelimiter Output field delimiter.
55  * \param outputFilenameExtension Output filename extension.
56  */
58  const std::string& fileName
59  , const std::string& outputPath
60  , const std::string& outputBaseName
61  , const Messaging::Timestamp& cmeTradeDayStartTimeUtc = Messaging::Timestamp(1970, Messaging::Month::January, 1, 0, 0, 0)
62  , char outputFieldDelimiter = ','
63  , const char* outputFilenameExtension = "csv"
64  );
65 
66  /// Generate the output.
67  void generate();
68 
69  ///
71 
72 private:
73  struct Impl;
74  Impl* const impl_;
75 };
76 
77 }}}}
Definition: Defines.h:40
Audit Trail Spreadsheet Generator.
#define ONIXS_ILINK3_EXPORTED
Definition: Compiler.h:175
The time point without the time-zone information.
Definition: Time.h:467