| // Copyright 2020 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef DLCSERVICE_STATE_CHANGE_REPORTER_INTERFACE_H_ |
| #define DLCSERVICE_STATE_CHANGE_REPORTER_INTERFACE_H_ |
| |
| #include <dlcservice/proto_bindings/dlcservice.pb.h> |
| |
| namespace dlcservice { |
| |
| class StateChangeReporterInterface { |
| public: |
| virtual ~StateChangeReporterInterface() = default; |
| |
| // Is called by whomever changes the state of a DLC. |
| virtual void DlcStateChanged(const DlcState& dlc_state) = 0; |
| |
| protected: |
| StateChangeReporterInterface() = default; |
| |
| private: |
| StateChangeReporterInterface(const StateChangeReporterInterface&) = delete; |
| StateChangeReporterInterface& operator=(const StateChangeReporterInterface&) = |
| delete; |
| }; |
| |
| } // namespace dlcservice |
| |
| #endif // DLCSERVICE_STATE_CHANGE_REPORTER_INTERFACE_H_ |