2 * Copyright (c) 2018 Samsung Electronics Co., Ltd.
4 * Licensed under the Flora License, Version 1.1 (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
8 * http://floralicense.org/license/
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.
17 #ifndef __SCHEDULER_H_
18 #define __SCHEDULER_H_
23 typedef struct scheduler scheduler_t;
26 * @brief Creates new instance of scheduler_t.
27 * @return new scheduler_t object, or NULL on error.
29 scheduler_t *scheduler_create();
32 * @brief Destroys scheduler.
33 * @param[in] scheduler Scheduler object.
35 void scheduler_destroy(scheduler_t *scheduler);
38 * @brief Changes current tasks config.
39 * @param[in] task_configs Array with tasks config.
40 * @param[in] config_size Size of the task_configs array.
42 void scheduler_change_config(scheduler_t *scheduler, const config_t *task_configs, size_t config_size);