Versão estável sem DMA e FFT. 128 amostras.
Dependencies: EthernetInterface NTPClient mbed-rtos mbed
Diff: Headers/Settings.h
- Revision:
- 0:fac116e94d44
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Headers/Settings.h Tue Jan 05 11:47:35 2016 +0000 @@ -0,0 +1,224 @@ +/* + * Settings.h + * + * Created on: + * Author: + */ + +#ifndef SETTINGS_H +#define SETTINGS_H + +#include <stdio.h> +#include <string.h> +#include <ctype.h> + +#include "mbed.h" +#include "EthernetInterface.h" + +#include "Split.h" + +#define FILENAME "/local/pmed.txt" +#define FILENAMERESET "/local/foi.txt" +#define FREQBASE 60U +#define NUMBER_OF_CHANNELS 6U +#define NUMBER_OF_OUTLETS 3U +#define NUMBER_OF_HARMONICS 12U +#define NUMBER_OF_SAMPLES 128U +#define LENGTH_MAIL_BOX 10U +#define MAXTRIES 10U + +class Settings +{ + + //server URL + static char* m_serverurl; + //module number + static int m_module_number; + //ip address + static char* m_ipaddress; + //netmask + static char* m_netmask; + //gateway + static char* m_gateway; + //dhcp + static int m_dhcp; + + //read RFID + static int m_ReadRfid; + + //gain x6(float) + static float m_gain[NUMBER_OF_CHANNELS]; + //offset x6(int) + static int m_offset[NUMBER_OF_CHANNELS]; + //limit x6(float) + static float m_limit[NUMBER_OF_CHANNELS]; + //outlet x6 (int) + static int m_outlet_number[NUMBER_OF_CHANNELS]; + //purpose x6(char) + static char m_purpose[NUMBER_OF_CHANNELS]; + + //outlet x3(int) + static int m_outlet[NUMBER_OF_OUTLETS]; + + //MaxChannels + //static int m_MaxChannels; + //MaxOutlets + //static int m_MaxOutlets; + //Samples + //static int m_Samples; + //FreqBase + //static int m_FreqBase; + + //MaxHarmonics + static int m_MaxHarmonics; + + //EventLimit + static int m_EventLimit; + + //MailBoxLength + static int m_MBoxLength; + + //NumberNeighbors + //static int m_NumNeighbors; + + //Neighbors x3(char [16]) + //static char *m_Neighbor[NEIGHBORS]; + + //PortTCP + //static int m_PortTCP; + + //Socket to receive requests + //static TCPSocketServer m_ServerSocket; + + //Socket to send requests + //static TCPSocketConnection m_Socket[NEIGHBORS]; + + //Maximum number of try connect and send + //static int m_MaxTries; + + //Delay time (ms) between 2 tries + static int m_DelayTry; + + //Delay time (ms) after Send (post) + static int m_DelaySend; + + // Control the marks behavior in log file + static bool m_logMarks; + static int m_logMarksInterval; + +public: + + Settings(); + + static char* get_ServerUrl() { return m_serverurl; } + static void set_ServerUrl(char *value) + { + if(m_serverurl!=NULL) delete m_serverurl; + int sz = strlen(value)+1; + m_serverurl = new char[sz]; + strcpy(m_serverurl,value); + } + static char* get_IpAddress() { return m_ipaddress; } + static void set_IpAddress(char *value) + { + if(m_ipaddress!=NULL) delete m_ipaddress; + int sz = strlen(value)+1; + m_ipaddress = new char[sz]; + strcpy(m_ipaddress,value); + } + static char* get_Netmask() { return m_netmask; } + static void set_Netmask(char *value) + { + if(m_netmask!=NULL) delete m_netmask; + int sz = strlen(value)+1; + m_netmask = new char[sz]; + strcpy(m_netmask,value); + } + + static char* get_Gateway() { return m_gateway; } + static void set_Gateway(char *value) + { + if(m_gateway!=NULL) delete m_gateway; + int sz = strlen(value)+1; + m_gateway = new char[sz]; + strcpy(m_gateway,value); + } + static int get_Dhcp() { return m_dhcp; } + static void set_Dhcp(int value) { m_dhcp = value; } + + static int get_ReadRfid() { return m_ReadRfid; } + static void set_ReadRfid(int value) { m_ReadRfid = value; } + + static int get_ModuleNumber() { return m_module_number; } + static void set_ModuleNumber(int value) { m_module_number = value; } + + static float get_Gain(int i) { return m_gain[i]; } + static void set_Gain(int i, float value) { m_gain[i] = value; } + static int get_Offset(int i) { return m_offset[i]; } + static void set_Offset(int i, int value) { m_offset[i] = value; } + static float get_Limit(int i) { return m_limit[i]; } + static void set_Limit(int i, float value) { m_limit[i] = value; } + static int get_OutletNumber(int i) { return m_outlet_number[i]; } + static void set_OutletNumber(int i, int value) { m_outlet_number[i] = value; } + static char get_Purpose(int i) { return m_purpose[i]; } + static void set_Purpose(int i, char value) { m_purpose[i] = value; } + + static int get_Outlet(int i) { return m_outlet[i]; } + static void set_Outlet(int i, int value) { m_outlet[i] = value; } + +// static int get_MaxChannels() { return m_MaxChannels; } +// static void set_MaxChannels(int value) { m_MaxChannels = value; } +// static int get_MaxOutlets() { return m_MaxOutlets; } +// static void set_MaxOutlets(int value) { m_MaxOutlets = value; } +// static int get_FreqBase() { return m_FreqBase; } +// static void set_FreqBase(int value) { m_FreqBase = value; } +// static int get_Samples() { return m_Samples; } +// static void set_Samples(int value) { m_Samples = value; } + + static int get_MaxHarmonics() { return m_MaxHarmonics; } + static void set_MaxHarmonics(int value) { m_MaxHarmonics = value; } + static int get_EventLimit() { return m_EventLimit; } + static void set_EventLimit(int value) { m_EventLimit = value; } + static int get_MBoxLength() { return m_MBoxLength; } + static void set_MBoxLength(int value) { m_MBoxLength = value; } + +// static int get_NumNeighbors() { return m_NumNeighbors; } +// static void set_NumNeighbors(int value) { m_NumNeighbors = value; } +// static char* get_Neighbor(int i) { return m_Neighbor[i]; } +// static void set_Neighbor(int i, char *value) +// for(...) +// { +// if(m_Neighbor[i]!=NULL) delete m_Neighbor[i]; +// int sz = strlen(value)+1; +// m_Neighbor[i] = new char[sz]; +// strcpy(m_Neighbor[i],value); +// } +// static int get_PortTCP() { return m_PortTCP; } +// static void set_PortTCP(int value) { m_PortTCP = value; } +// static TCPSocketServer& get_ServerSocket() { return m_ServerSocket; } +// static void set_ServerSocket(TCPSocketServer value) { m_ServerSocket = value; } +// static TCPSocketConnection& get_Socket(int i) { return m_Socket[i]; } +// static void set_Socket(int i, TCPSocketConnection value) { m_Socket[i] = value; } +// static int get_MaxTries() { return m_MaxTries; } +// static void set_MaxTries(int value) { m_MaxTries = value; } + + static int get_DelayTry() { return m_DelayTry; } + static void set_DelayTry(int value) { m_DelayTry = value; } + + static int get_DelaySend() { return m_DelaySend; } + static void set_DelaySend(int value) { m_DelaySend = value; } + + // Control the marks behavior in log file + static bool get_LogMarks() { return m_logMarks; } + static void set_LogMarks(bool value) { m_logMarks = value; } + static int get_LogMarksInterval() { return m_logMarksInterval; } + static void set_LogMarksInterval(int value) { m_logMarksInterval = value; } + + static void ReadFile(); //Read the config file and places the values in the internal variables + static void LoadDefaults(); + static void WriteFile(); + static void ShowValues(); + +}; + +#endif //#ifndef SETTINGS \ No newline at end of file