struct Header {
public:
Header(uint32_tnumber_of_dex_files_,
uint32_tdex_size,
uint32_tverifier_deps_size,
uint32_tquickening_info_size);
const char*GetMagic() const { return reinterpret_cast(magic_); }
const char*GetVersion() const { return reinterpret_cast(version_); }
boolIsMagicValid() const;
boolIsVersionValid() const;
bool IsValid()const { return IsMagicValid() && IsVersionValid(); }
uint32_tGetDexSize() const { return dex_size_; }
uint32_tGetVerifierDepsSize() const { return verifier_deps_size_; }
uint32_tGetQuickeningInfoSize() const { return quickening_info_size_; }
uint32_tGetNumberOfDexFiles() const { return number_of_dex_files_; }
static constexpr uint8_t kVdexInvalidMagic[]= { 'w', 'd', 'e', 'x' };
private:
staticconstexpr uint8_t kVdexM