xref: /openbmc/bmcweb/features/redfish/include/redfish.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3b6df6dc7SBorawski.Lukasz #pragma once
4b6df6dc7SBorawski.Lukasz 
53cd7072bSEd Tanous #include "app.hpp"
6b6df6dc7SBorawski.Lukasz 
71abe55efSEd Tanous namespace redfish
81abe55efSEd Tanous {
9b6df6dc7SBorawski.Lukasz /*
10b6df6dc7SBorawski.Lukasz  * @brief Top level class installing and providing Redfish services
11b6df6dc7SBorawski.Lukasz  */
121abe55efSEd Tanous class RedfishService
131abe55efSEd Tanous {
14b6df6dc7SBorawski.Lukasz   public:
15b6df6dc7SBorawski.Lukasz     /*
16b6df6dc7SBorawski.Lukasz      * @brief Redfish service constructor
17b6df6dc7SBorawski.Lukasz      *
18b6df6dc7SBorawski.Lukasz      * Loads Redfish configuration and installs schema resources
19b6df6dc7SBorawski.Lukasz      *
20b6df6dc7SBorawski.Lukasz      * @param[in] app   Crow app on which Redfish will initialize
21b6df6dc7SBorawski.Lukasz      */
223cd7072bSEd Tanous     explicit RedfishService(App& app);
23b6df6dc7SBorawski.Lukasz };
24b6df6dc7SBorawski.Lukasz 
25b6df6dc7SBorawski.Lukasz } // namespace redfish
26