Coverage for /Syzygy/kasko/minidump_request.h

CoverageLines executed / instrumented / missingexe / inst / missLanguageGroup
0.0%0024.C++source

Line-by-line coverage:

   1    :  // Copyright 2015 Google Inc. All Rights Reserved.
   2    :  //
   3    :  // Licensed under the Apache License, Version 2.0 (the "License");
   4    :  // you may not use this file except in compliance with the License.
   5    :  // You may obtain a copy of the License at
   6    :  //
   7    :  //     http://www.apache.org/licenses/LICENSE-2.0
   8    :  //
   9    :  // Unless required by applicable law or agreed to in writing, software
  10    :  // distributed under the License is distributed on an "AS IS" BASIS,
  11    :  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12    :  // See the License for the specific language governing permissions and
  13    :  // limitations under the License.
  14    :  
  15    :  #ifndef SYZYGY_KASKO_MINIDUMP_REQUEST_H_
  16    :  #define SYZYGY_KASKO_MINIDUMP_REQUEST_H_
  17    :  
  18    :  #include <stdint.h>
  19    :  
  20    :  #include <utility>
  21    :  #include <vector>
  22    :  
  23    :  #include "base/strings/string16.h"
  24    :  #include "syzygy/core/address_range.h"
  25    :  
  26  m :  namespace kasko {
  27    :  
  28    :  // Represents the inputs of a minidump request.
  29  m :  struct MinidumpRequest {
  30    :    // Specifies the type of Minidump to be included in a report.
  31  m :    enum Type {
  32    :      // Minidump with stacks, PEB, TEB, and unloaded module list.
  33  m :      SMALL_DUMP_TYPE,
  34    :  
  35    :      // Minidump with all of the above, plus memory referenced from stack.
  36  m :      LARGER_DUMP_TYPE,
  37    :  
  38    :      // Large dump with all process memory.
  39  m :      FULL_DUMP_TYPE
  40  m :    };
  41    :  
  42    :    // Represents a custom stream to be included in the generated minidump.
  43  m :    struct CustomStream {
  44  m :      uint32_t type;
  45  m :      const void* data;
  46  m :      size_t length;
  47  m :    };
  48    :  
  49    :    // Represents a user-selected memory range to be included in the generated
  50    :    // minidump.
  51  m :    using MemoryRange = core::AddressRange<uint32_t, uint32_t>;
  52    :  
  53    :    // Represents a single crash key and its value.
  54  m :    using CrashKey = std::pair<const base::char16*, const base::char16*>;
  55    :  
  56    :    // Instantiates a default request.
  57  m :    MinidumpRequest();
  58  m :    ~MinidumpRequest();
  59    :  
  60    :    // The requested dump type (default: SMALL_DUMP_TYPE).
  61  m :    Type type;
  62    :  
  63    :    // True if exception_info_address is valid in the client process; false
  64    :    // otherwise.
  65  m :    bool client_exception_pointers;
  66    :  
  67    :    // The address of an EXCEPTION_POINTERS structure (optional, default: 0).
  68  m :    uint32_t exception_info_address;
  69    :  
  70    :    // Crash keys to be included with the report (default: empty).
  71  m :    std::vector<CrashKey> crash_keys;
  72    :  
  73    :    // Custom streams to be included with the report (default: empty).
  74  m :    std::vector<CustomStream> custom_streams;
  75    :  
  76    :    // User-selected memory ranges to be included in the minidump.
  77  m :    std::vector<MemoryRange> user_selected_memory_ranges;
  78  m :  };
  79    :  
  80  m :  }  // namespace kasko
  81    :  
  82    :  #endif  // SYZYGY_KASKO_MINIDUMP_REQUEST_H_

Coverage information generated Thu Jan 14 17:40:38 2016.