• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2017 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 /*******************************************************************************
18  * AUTOGENERATED - DO NOT EDIT
19  *******************************************************************************
20  * This file has been generated from the protobuf message
21  * perfetto/config/android/packages_list_config.proto
22  * by
23  * ../../tools/proto_to_cpp/proto_to_cpp.cc.
24  * If you need to make changes here, change the .proto file and then run
25  * ./tools/gen_tracing_cpp_headers_from_protos
26  */
27 
28 #ifndef INCLUDE_PERFETTO_TRACING_CORE_PACKAGES_LIST_CONFIG_H_
29 #define INCLUDE_PERFETTO_TRACING_CORE_PACKAGES_LIST_CONFIG_H_
30 
31 #include <stdint.h>
32 #include <string>
33 #include <type_traits>
34 #include <vector>
35 
36 #include "perfetto/base/export.h"
37 
38 // Forward declarations for protobuf types.
39 namespace perfetto {
40 namespace protos {
41 class PackagesListConfig;
42 }
43 }  // namespace perfetto
44 
45 namespace perfetto {
46 
47 class PERFETTO_EXPORT PackagesListConfig {
48  public:
49   PackagesListConfig();
50   ~PackagesListConfig();
51   PackagesListConfig(PackagesListConfig&&) noexcept;
52   PackagesListConfig& operator=(PackagesListConfig&&);
53   PackagesListConfig(const PackagesListConfig&);
54   PackagesListConfig& operator=(const PackagesListConfig&);
55   bool operator==(const PackagesListConfig&) const;
56   bool operator!=(const PackagesListConfig& other) const {
57     return !(*this == other);
58   }
59 
60   // Conversion methods from/to the corresponding protobuf types.
61   void FromProto(const perfetto::protos::PackagesListConfig&);
62   void ToProto(perfetto::protos::PackagesListConfig*) const;
63 
package_name_filter_size()64   int package_name_filter_size() const {
65     return static_cast<int>(package_name_filter_.size());
66   }
package_name_filter()67   const std::vector<std::string>& package_name_filter() const {
68     return package_name_filter_;
69   }
mutable_package_name_filter()70   std::vector<std::string>* mutable_package_name_filter() {
71     return &package_name_filter_;
72   }
clear_package_name_filter()73   void clear_package_name_filter() { package_name_filter_.clear(); }
add_package_name_filter()74   std::string* add_package_name_filter() {
75     package_name_filter_.emplace_back();
76     return &package_name_filter_.back();
77   }
78 
79  private:
80   std::vector<std::string> package_name_filter_;
81 
82   // Allows to preserve unknown protobuf fields for compatibility
83   // with future versions of .proto files.
84   std::string unknown_fields_;
85 };
86 
87 }  // namespace perfetto
88 
89 #endif  // INCLUDE_PERFETTO_TRACING_CORE_PACKAGES_LIST_CONFIG_H_
90