21#ifndef __ETHMAINTAINER_H__ 
   22#define __ETHMAINTAINER_H__ 
   25#include "EoUpdaterProtocol.h" 
   36bool string2ipv4(
const string &ipv4string, eOipv4addr_t &ipv4);
 
   39eOipv4addr_t 
acetoipv4(ACE_UINT32 address);
 
  120    EthBoardList discover(
bool clearbeforediscovery = 
true, 
int numberofdiscoveries = 1, 
double waittimeout = 1.0);
 
  129    EthBoardList information(eOipv4addr_t ipv4, 
bool ask2board = 
true, 
bool forcemaintenance = 
true, 
int numberofrequests = 1, 
double waittimeout = 1.0);
 
  133    std::string 
moreinformation(eOipv4addr_t ipv4, 
bool forcemaintenance = 
false);
 
  139    bool go2maintenance(eOipv4addr_t ipv4, 
bool verify = 
true, 
int retries = 6, 
double timegap = 1.0);
 
  149    bool go2application(eOipv4addr_t ipv4, 
bool checkdef2runapplication = 
true, 
double bootstraptime = 10.0, 
bool verify = 
true);
 
  161    bool program(eOipv4addr_t ipv4, eObrd_ethtype_t type, eOuprot_process_t process, eOversion_t targetversion, FILE *
fp, 
bool forcemaintenance = 
true, 
void progress(
float) = NULL, 
bool restart2application = 
true);
 
  166    bool command_supported(eOipv4addr_t ipv4, eOuprot_proc_capabilities_t capability, 
bool ask2board = 
false);
 
  168    bool command_def2run(eOipv4addr_t ipv4, eOuprot_process_t process, 
bool forcemaintenance = 
true, 
bool verify = 
true);
 
  172    bool command_changeaddress(eOipv4addr_t ipv4, eOipv4addr_t ipv4new, 
bool checkifnewispresent = 
true, 
bool forcemaintenance = 
true, 
bool restart = 
false, 
bool verify = 
false);
 
  186    bool command_eeprom_read(eOipv4addr_t ipv4, uint16_t from, uint16_t size, uint8_t **value);
 
  193    bool command_program(eOipv4addr_t ipv4, FILE *programFile, eOuprot_partition2prog_t partition, 
void (*updateProgressBar)(
float), 
EthBoardList *pboardlist, 
string &stringresult);
 
  226    std::string 
prepareMoreInfoText(eOuprot_cmd_DISCOVER_REPLY_t * disc, 
const char *ipv4string);
 
  227    std::string 
prepareMoreInfoText(eOuprot_cmd_DISCOVER_REPLY2_t * disc, 
const char *ipv4string);
 
  231    std::string 
getMoreInfoText(eOuprot_cmd_MOREINFO_REPLY_t *moreinfo, 
char *ipv4string);
 
 
string ipv4tostring(eOipv4addr_t ipv4)
 
eOipv4addr_t acetoipv4(ACE_UINT32 address)
 
bool string2ipv4(const string &ipv4string, eOipv4addr_t &ipv4)
 
ACE_UINT32 ipv4toace(eOipv4addr_t ipv4)
 
unsigned char mRxBuffer[uprot_UDPmaxsize]
 
bool boards_useinternal(bool on)
 
static const eOipv4addr_t ipv4Broadcast
 
std::string moreinformation(eOipv4addr_t ipv4, bool forcemaintenance=false)
 
std::string getMoreInfoText(eOuprot_cmd_MOREINFO_REPLY_t *moreinfo, char *ipv4string)
 
EthBoardList information(eOipv4addr_t ipv4, bool ask2board=true, bool forcemaintenance=true, int numberofrequests=1, double waittimeout=1.0)
 
bool command_jump2updater(eOipv4addr_t ipv4)
 
EthBoardList discover(bool clearbeforediscovery=true, int numberofdiscoveries=1, double waittimeout=1.0)
 
static const eOipv4addr_t ipv4OfAllSelected
 
bool open(eOipv4addr_t ipv4=hostIPaddress, eOipv4port_t port=mainIPport)
 
bool command_def2run(eOipv4addr_t ipv4, eOuprot_process_t process, bool forcemaintenance=true, bool verify=true)
 
bool boards_set(EthBoardList &boards)
 
string processDiscoveryReplies2(EthBoardList &boardlist, double waittimeout=1.0)
 
int sendPROG2(const uint8_t opc, progData_t &progdata)
 
bool go2application(eOipv4addr_t ipv4, bool checkdef2runapplication=true, double bootstraptime=10.0, bool verify=true)
 
int boards_rem(eOipv4addr_t ipv4)
 
EthBoardList & boards_get(void)
 
bool boards_select(eOipv4addr_t ipv4, bool on)
 
bool command_info32_clr(eOipv4addr_t ipv4)
 
bool isInApplication(eOipv4addr_t ipv4, EthBoardList &boardlist)
 
bool isInMaintenance(eOipv4addr_t ipv4, EthBoardList &boardlist)
 
static const eOipv4port_t mainIPport
 
bool sendCommand(eOipv4addr_t ipv4, void *cmd, uint16_t len, EthBoardList *boardlist=NULL)
 
bool go2maintenance(eOipv4addr_t ipv4, bool verify=true, int retries=6, double timegap=1.0)
 
bool command_eeprom_read(eOipv4addr_t ipv4, uint16_t from, uint16_t size, uint8_t **value)
 
std::string processMoreInfoReplies(EthBoardList &boardlist)
 
bool command_info32_set(eOipv4addr_t ipv4, const string &info32)
 
vector< string > command_info32_get(eOipv4addr_t ipv4)
 
std::string prepareMoreInfoText(eOuprot_cmd_DISCOVER_REPLY_t *disc, const char *ipv4string)
 
EthBoardList _internalboardlist
 
bool command_blink(eOipv4addr_t ipv4)
 
int boards_add(eOipv4addr_t ipv4, boardInfo2_t &info2, bool force)
 
unsigned char mTxBuffer[uprot_UDPmaxsize]
 
bool program(eOipv4addr_t ipv4, eObrd_ethtype_t type, eOuprot_process_t process, eOversion_t targetversion, FILE *fp, bool forcemaintenance=true, void progress(float)=NULL, bool restart2application=true)
 
bool command_program(eOipv4addr_t ipv4, FILE *programFile, eOuprot_partition2prog_t partition, void(*updateProgressBar)(float), EthBoardList *pboardlist, string &stringresult)
 
static const eOipv4addr_t hostIPaddress
 
bool command_eeprom_erase(eOipv4addr_t ipv4)
 
bool command_restart(eOipv4addr_t ipv4)
 
bool command_supported(eOipv4addr_t ipv4, eOuprot_proc_capabilities_t capability, bool ask2board=false)
 
bool command_jump2address(eOipv4addr_t ipv4, uint32_t romaddress)
 
bool command_changeaddress(eOipv4addr_t ipv4, eOipv4addr_t ipv4new, bool checkifnewispresent=true, bool forcemaintenance=true, bool restart=false, bool verify=false)
 
bool _useofinternalboardlist
 
static struct bpf_program fp
 
vector< EthBoard * > selected