#pragma once
#include "olv_dll.h"
#include "gcola.h"
#include "lock.h"
#include "StrArray.h"

typedef struct Msdata{
	UINT id;
	WPARAM wParam;
	LPARAM lParam;
	bool *proces;
}Msdata;

//! Clase extendida para manejo de la cola de mensajes del log
/**
 * Clase extendida para manejo de la cola de mensajes del log
 */
class Cstr_Msg: public StrArray
{
	Clock lock_cola;//lock de la cola
public:
	bool dame(StrArray& stout);
	void pon(char* str);
};
class COlivia;

//! Clase manager de mensajes enviados para el main
/**
 * Clase manager de mensajes enviados para el main
 */
class OLV_EXPORT Msmain
{
	Cstr_Msg log;
public:
	COlivia *olv;

	bool pirate;
	Msmain(void);
	~Msmain(void);
	void log_ext( __time64_t tiemp, char *modulo, char *fmt );
	void Despacha();
	bool Despacha_log();

private:
};
