/***************************************************************************
                SMS Raid Event Data Manager Class
                -----------------------------------------
    begin      : 2010/05/24
    copyright  : (C) 2005 SolutionBox Inc.
    author     : Service 1 Team
    email      : svc1@solbox.com
    version    : 1.0

    CopyRight(C) 2005 SolutionBox Inc. All Rights reserved.
    Redistribution and use in source and binary forms, with or with out
    modification, are not permitted in outside of SolutionBox Inc.
***************************************************************************/

#ifndef __EVENT_DATA_MANAGER__
#define __EVENT_DATA_MANAGER__

#include <pthread.h>
#include <string>
#include <time.h>
#include "Logger.h"
#include "EventData.h"
#include <list>

using namespace std;

/// @brief CEventDataManager 
/// EventDataManager 는 Areca library로부터 받아오는 raid event 정보를 저장한다.
class CEventDataManager 
{
    public:
        /// @brief 생성자
        CEventDataManager();

        /// @brief 소멸자
        ~CEventDataManager();

		//TODO:
		bool Init();
		bool SetCurrentData(list<CEventData>& listRet);
		bool GetSmsEvent(list<CEventData>& listRet);
		int GetLatestData( CEventData& resData );
		bool GetAllData(list<CEventData>& listRet);
	private:
		// TODO:
		list<CEventData> m_Current;
		list<CEventData> m_Old;
		CEventData m_SentOld;

		pthread_mutex_t			m_mutex;

};
#endif // __EVENT_DATA_MANAGER__
