retdec
json_presentation.h
Go to the documentation of this file.
1 
7 #ifndef FILEINFO_FILE_PRESENTATION_JSON_PRESENTATION_H
8 #define FILEINFO_FILE_PRESENTATION_JSON_PRESENTATION_H
9 
10 #include <rapidjson/prettywriter.h>
11 #include <rapidjson/stringbuffer.h>
12 #include <rapidjson/encodings.h>
13 
16 
17 namespace retdec {
18 namespace fileinfo {
19 
24 {
25  public:
26  using Writer = rapidjson::PrettyWriter<
27  rapidjson::StringBuffer,
28  rapidjson::ASCII<>>;
29 
30  private:
31  bool verbose;
32 
35  void presentErrors(Writer& writer) const;
36  void presentLoaderError(Writer& writer) const;
37  void presentCompiler(Writer& writer) const;
38  void presentLanguages(Writer& writer) const;
39  void presentRichHeader(Writer& writer) const;
40  void presentPackingInfo(Writer& writer) const;
41  void presentOverlay(Writer& writer) const;
42  void presentPatterns(Writer& writer) const;
43  void presentMissingDepsInfo(Writer& writer) const;
44  void presentLoaderInfo(Writer& writer) const;
45  void presentCertificates(Writer& writer) const;
46  void presentTlsInfo(Writer& writer) const;
47  void presentDotnetInfo(Writer& writer) const;
48  void presentVersionInfo(Writer& writer) const;
49  void presentVisualBasicInfo(Writer& writer) const;
50  void presentElfNotes(Writer& writer) const;
51  void presentFlags(
52  Writer& writer,
53  const std::string &title,
54  const std::string &flags,
55  const std::vector<std::string> &desc) const;
57  Writer& writer,
58  const IterativeSubtitleGetter &getter,
59  std::size_t structIndex) const;
61  Writer& writer,
62  const IterativeSubtitleGetter &getter) const;
64  public:
65  JsonPresentation(FileInformation &fileinfo_, bool verbose_);
66 
67  virtual bool present() override;
68 };
69 
70 } // namespace fileinfo
71 } // namespace retdec
72 
73 #endif
Definition: file_information.h:25
Definition: file_presentation.h:19
Definition: iterative_subtitle_getter.h:22
Definition: json_presentation.h:24
void presentElfNotes(Writer &writer) const
Definition: json_presentation.cpp:963
void presentCertificates(Writer &writer) const
Definition: json_presentation.cpp:373
rapidjson::PrettyWriter< rapidjson::StringBuffer, rapidjson::ASCII<> > Writer
Definition: json_presentation.h:28
void presentLoaderInfo(Writer &writer) const
Definition: json_presentation.cpp:351
void presentOverlay(Writer &writer) const
Definition: json_presentation.cpp:298
void presentIterativeSubtitle(Writer &writer, const IterativeSubtitleGetter &getter) const
Definition: json_presentation.cpp:1194
void presentMissingDepsInfo(Writer &writer) const
Definition: json_presentation.cpp:331
void presentRichHeader(Writer &writer) const
Definition: json_presentation.cpp:268
void presentVisualBasicInfo(Writer &writer) const
Definition: json_presentation.cpp:780
void presentIterativeSubtitleStructure(Writer &writer, const IterativeSubtitleGetter &getter, std::size_t structIndex) const
Definition: json_presentation.cpp:1100
void presentPackingInfo(Writer &writer) const
Definition: json_presentation.cpp:289
void presentTlsInfo(Writer &writer) const
Definition: json_presentation.cpp:507
void presentVersionInfo(Writer &writer) const
Definition: json_presentation.cpp:916
virtual bool present() override
Definition: json_presentation.cpp:1222
void presentCompiler(Writer &writer) const
Definition: json_presentation.cpp:193
void presentErrors(Writer &writer) const
Definition: json_presentation.cpp:107
JsonPresentation(FileInformation &fileinfo_, bool verbose_)
Definition: json_presentation.cpp:97
void presentLoaderError(Writer &writer) const
Definition: json_presentation.cpp:168
void presentFlags(Writer &writer, const std::string &title, const std::string &flags, const std::vector< std::string > &desc) const
Definition: json_presentation.cpp:1067
bool verbose
true - print all information about file
Definition: json_presentation.h:31
void presentPatterns(Writer &writer) const
Definition: json_presentation.cpp:317
void presentDotnetInfo(Writer &writer) const
Definition: json_presentation.cpp:541
void presentLanguages(Writer &writer) const
Definition: json_presentation.cpp:243
General presentation class.
Definition of IterativeSubtitleGetter class.
Definition: archive_wrapper.h:19