1 // Copyright 2014 The Crashpad Authors. 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 #include "snapshot/test/test_thread_snapshot.h"
16 
17 namespace crashpad {
18 namespace test {
19 
TestThreadSnapshot()20 TestThreadSnapshot::TestThreadSnapshot()
21     : context_union_(),
22       context_(),
23       stack_(),
24       thread_id_(0),
25       suspend_count_(0),
26       priority_(0),
27       thread_specific_data_address_(0) {
28   context_.x86 = &context_union_.x86;
29 }
30 
~TestThreadSnapshot()31 TestThreadSnapshot::~TestThreadSnapshot() {
32 }
33 
Context() const34 const CPUContext* TestThreadSnapshot::Context() const {
35   return &context_;
36 }
37 
Stack() const38 const MemorySnapshot* TestThreadSnapshot::Stack() const {
39   return stack_.get();
40 }
41 
ThreadID() const42 uint64_t TestThreadSnapshot::ThreadID() const {
43   return thread_id_;
44 }
45 
SuspendCount() const46 int TestThreadSnapshot::SuspendCount() const {
47   return suspend_count_;
48 }
49 
Priority() const50 int TestThreadSnapshot::Priority() const {
51   return priority_;
52 }
53 
ThreadSpecificDataAddress() const54 uint64_t TestThreadSnapshot::ThreadSpecificDataAddress() const {
55   return thread_specific_data_address_;
56 }
57 
ExtraMemory() const58 std::vector<const MemorySnapshot*> TestThreadSnapshot::ExtraMemory() const {
59   std::vector<const MemorySnapshot*> extra_memory;
60   for (const auto& em : extra_memory_) {
61     extra_memory.push_back(em.get());
62   }
63   return extra_memory;
64 }
65 
66 }  // namespace test
67 }  // namespace crashpad
68