1 #pragma once
2 
3 #include "config.h"
4 
5 #include "utils.hpp"
6 
7 #include <sdbusplus/bus.hpp>
8 
9 #include <string>
10 
11 namespace settings
12 {
13 
14 constexpr auto root = "/";
15 constexpr auto timeSyncIntf = "xyz.openbmc_project.Time.Synchronization";
16 constexpr auto ntpSync = "xyz.openbmc_project.Time.Synchronization.Method.NTP";
17 constexpr auto manualSync =
18     "xyz.openbmc_project.Time.Synchronization.Method.Manual";
19 
20 /** @class Objects
21  *  @brief Fetch paths of settings D-bus objects of interest upon construction
22  */
23 struct Objects
24 {
25   public:
26     /** @brief Constructor - fetch settings objects
27      *
28      * @param[in] bus - The D-bus bus object
29      */
30     explicit Objects(sdbusplus::bus_t& /*bus*/);
31     Objects() = delete;
32     Objects(const Objects&) = delete;
33     Objects& operator=(const Objects&) = delete;
34     Objects(Objects&&) = default;
35     Objects& operator=(Objects&&) = delete;
36     ~Objects() = default;
37 
38     /** @brief time sync method settings object */
39     phosphor::time::utils::Path timeSyncMethod = DEFAULT_TIME_SYNC_OBJECT_PATH;
40 };
41 
42 } // namespace settings
43