13e5483f6Sopenharmony_ci/*
23e5483f6Sopenharmony_ci * Copyright (C) 2024 Huawei Device Co., Ltd.
33e5483f6Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
43e5483f6Sopenharmony_ci * you may not use this file except in compliance with the License.
53e5483f6Sopenharmony_ci * You may obtain a copy of the License at
63e5483f6Sopenharmony_ci *
73e5483f6Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
83e5483f6Sopenharmony_ci *
93e5483f6Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
103e5483f6Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
113e5483f6Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
123e5483f6Sopenharmony_ci * See the License for the specific language governing permissions and
133e5483f6Sopenharmony_ci * limitations under the License.
143e5483f6Sopenharmony_ci */
153e5483f6Sopenharmony_ci
163e5483f6Sopenharmony_ci#ifndef RINGTONE_PRIVACY_MANAGER_H
173e5483f6Sopenharmony_ci#define RINGTONE_PRIVACY_MANAGER_H
183e5483f6Sopenharmony_ci
193e5483f6Sopenharmony_ci#include <string>
203e5483f6Sopenharmony_ci
213e5483f6Sopenharmony_cinamespace OHOS {
223e5483f6Sopenharmony_cinamespace Media {
233e5483f6Sopenharmony_ci#define EXPORT __attribute__ ((visibility ("default")))
243e5483f6Sopenharmony_cienum PrivacyType {
253e5483f6Sopenharmony_ci    PRIVACY_NONE = 0,
263e5483f6Sopenharmony_ci    PRIVACY_WRITE_RINGTONE,
273e5483f6Sopenharmony_ci    PRIVACY_MAX
283e5483f6Sopenharmony_ci};
293e5483f6Sopenharmony_ci
303e5483f6Sopenharmony_ciclass RingtonePrivacyManager {
313e5483f6Sopenharmony_cipublic:
323e5483f6Sopenharmony_ci    EXPORT RingtonePrivacyManager(const std::string &path, const std::string &mode);
333e5483f6Sopenharmony_ci    EXPORT virtual ~RingtonePrivacyManager();
343e5483f6Sopenharmony_ci
353e5483f6Sopenharmony_ci    EXPORT int32_t Open();
363e5483f6Sopenharmony_ci
373e5483f6Sopenharmony_ciprivate:
383e5483f6Sopenharmony_ci    std::string path_;
393e5483f6Sopenharmony_ci    std::string mode_;
403e5483f6Sopenharmony_ci};
413e5483f6Sopenharmony_ci} // namespace Media
423e5483f6Sopenharmony_ci} // namespace OHOS
433e5483f6Sopenharmony_ci#endif // RINGTONE_PRIVACY_MANAGER_H
44