OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef TOOLS_GN_VISUAL_STUDIO_WRITER_H_ | 5 #ifndef TOOLS_GN_VISUAL_STUDIO_WRITER_H_ |
6 #define TOOLS_GN_VISUAL_STUDIO_WRITER_H_ | 6 #define TOOLS_GN_VISUAL_STUDIO_WRITER_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
| 9 #include <memory> |
9 #include <string> | 10 #include <string> |
10 #include <vector> | 11 #include <vector> |
11 | 12 |
12 #include "base/gtest_prod_util.h" | 13 #include "base/gtest_prod_util.h" |
13 #include "base/macros.h" | 14 #include "base/macros.h" |
14 #include "tools/gn/path_output.h" | 15 #include "tools/gn/path_output.h" |
15 | 16 |
16 namespace base { | 17 namespace base { |
17 class FilePath; | 18 class FilePath; |
18 } | 19 } |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 const std::string& label_dir_path, | 71 const std::string& label_dir_path, |
71 const std::string& config_platform); | 72 const std::string& config_platform); |
72 ~SolutionProject() override; | 73 ~SolutionProject() override; |
73 | 74 |
74 // Absolute label dir path. | 75 // Absolute label dir path. |
75 std::string label_dir_path; | 76 std::string label_dir_path; |
76 // Configuration platform. May be different than solution config platform. | 77 // Configuration platform. May be different than solution config platform. |
77 std::string config_platform; | 78 std::string config_platform; |
78 }; | 79 }; |
79 | 80 |
80 using SolutionProjects = std::vector<SolutionProject*>; | 81 using SolutionProjects = std::vector<std::unique_ptr<SolutionProject>>; |
81 using SolutionFolders = std::vector<SolutionEntry*>; | 82 using SolutionFolders = std::vector<std::unique_ptr<SolutionEntry>>; |
82 | 83 |
83 VisualStudioWriter(const BuildSettings* build_settings, | 84 VisualStudioWriter(const BuildSettings* build_settings, |
84 const char* config_platform, | 85 const char* config_platform, |
85 Version version); | 86 Version version); |
86 ~VisualStudioWriter(); | 87 ~VisualStudioWriter(); |
87 | 88 |
88 bool WriteProjectFiles(const Target* target, Err* err); | 89 bool WriteProjectFiles(const Target* target, Err* err); |
89 bool WriteProjectFileContents(std::ostream& out, | 90 bool WriteProjectFileContents(std::ostream& out, |
90 const SolutionProject& solution_project, | 91 const SolutionProject& solution_project, |
91 const Target* target, | 92 const Target* target, |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 // Semicolon-separated Windows SDK include directories. | 129 // Semicolon-separated Windows SDK include directories. |
129 std::string windows_kits_include_dirs_; | 130 std::string windows_kits_include_dirs_; |
130 | 131 |
131 // Path formatter for ninja targets. | 132 // Path formatter for ninja targets. |
132 PathOutput ninja_path_output_; | 133 PathOutput ninja_path_output_; |
133 | 134 |
134 DISALLOW_COPY_AND_ASSIGN(VisualStudioWriter); | 135 DISALLOW_COPY_AND_ASSIGN(VisualStudioWriter); |
135 }; | 136 }; |
136 | 137 |
137 #endif // TOOLS_GN_VISUAL_STUDIO_WRITER_H_ | 138 #endif // TOOLS_GN_VISUAL_STUDIO_WRITER_H_ |
OLD | NEW |