/*
 * default.h
 *
 * Created: 26.4.2014 16:28:27
 *  Author: xp
 */ 


#ifndef DEFAULT_H_
#define DEFAULT_H_

#include <config_tasks.h>
#include "support/support.h"

/* Messages types with auto generate string names */
#define FOREACH_DEFAULT_TASK_NAME_msg_type(ITEM) \
ITEM(DEFAULT_TASK_NAME_)   \

typedef enum {
	FOREACH_DEFAULT_TASK_NAME_msg_type(GENERATE_ENUM)
} DEFAULT_TASK_NAME_msg_type_t;

extern const char *const DEFAULT_TASK_NAME_msg_type_str[];

typedef struct {
	DEFAULT_TASK_NAME_msg_type_t message;
	uint32_t settings;
} DEFAULT_TASK_NAME_msg_t;

typedef struct {
	xTaskHandle task_handle;
	xQueueHandle control_pipe;
} DEFAULT_TASK_NAME_handle_t;

status_code_t DEFAULT_TASK_NAME_init(DEFAULT_TASK_NAME_handle_t * task_handle);

void DEFAULT_TASK_NAME_task(void *pvParameters);

#endif /* DEFAULT_H_ */