/* 
 * File:   PCAPFile.h
 * Author: Sergio
 *
 * Created on 27 de diciembre de 2017, 11:20
 */

#ifndef PCAPFILE_H
#define PCAPFILE_H

#include "config.h"
#include "use.h"
#include "UDPDumper.h"

class PCAPFile :
	public UDPDumper
{
public:
	PCAPFile() = default;
	~PCAPFile();
	int Open(const char* filename);
	virtual void WriteUDP(uint64_t currentTimeMillis, const IpAddress& originIp, uint16_t originPort, const IpAddress& destIp, uint16_t destPort, const uint8_t* data, uint32_t size, DWORD truncate = 0) override;
	virtual void Close() override;
private:
	int fd = -1;
	Mutex mutex;

};

#endif /* PCAPFILE_H */

