blob: 8f542026e90d97540e5cc221a275ca5c083db0bc [file] [log] [blame]
Jon Medhurstaaf37a32013-06-11 12:10:56 +01001/**
Jon Medhurstb1d07442015-05-08 12:04:18 +01002 * Copyright (C) ARM Limited 2010-2015. All rights reserved.
Jon Medhurstaaf37a32013-06-11 12:10:56 +01003 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
Jon Medhurst96b56152014-10-30 18:01:15 +00009#ifndef __SENDER_H__
10#define __SENDER_H__
Jon Medhurstaaf37a32013-06-11 12:10:56 +010011
12#include <stdio.h>
13#include <pthread.h>
14
15class OlySocket;
16
17enum {
18 RESPONSE_XML = 1,
19 RESPONSE_APC_DATA = 3,
20 RESPONSE_ACK = 4,
21 RESPONSE_NAK = 5,
22 RESPONSE_ERROR = 0xFF
23};
24
25class Sender {
26public:
27 Sender(OlySocket* socket);
28 ~Sender();
29 void writeData(const char* data, int length, int type);
30 void createDataFile(char* apcDir);
31private:
32 OlySocket* mDataSocket;
33 FILE* mDataFile;
34 char* mDataFileName;
35 pthread_mutex_t mSendMutex;
Jon Medhurst34d97692013-12-19 09:23:06 +000036
37 // Intentionally unimplemented
38 Sender(const Sender &);
39 Sender &operator=(const Sender &);
Jon Medhurstaaf37a32013-06-11 12:10:56 +010040};
41
Jon Medhurste31266f2014-08-04 15:47:44 +010042#endif //__SENDER_H__