/**************************************************************
 * HTTPPrint.h
 * Provides callback headers and resolution for user's custom
 * HTTP Application.
 * 
 * This file is automatically generated by the MPFS Utility
 * ALL MODIFICATIONS WILL BE OVERWRITTEN BY THE MPFS GENERATOR
 **************************************************************/

#ifndef __HTTPPRINT_H
#define __HTTPPRINT_H

#include "TCPIP Stack/TCPIP.h"

#if defined(STACK_USE_HTTP2_SERVER)

extern HTTP_STUB httpStubs[MAX_HTTP_CONNECTIONS];
extern BYTE curHTTPID;

void HTTPPrint(DWORD callbackID);
void HTTPPrint_hellomsg(void);
void HTTPPrint_config_mac(void);
void HTTPPrint_config_dhcpchecked(void);
void HTTPPrint_config_ip(void);
void HTTPPrint_config_gw(void);
void HTTPPrint_config_subnet(void);
void HTTPPrint_config_dns1(void);
void HTTPPrint_config_dns2(void);
void HTTPPrint_reboot(void);
void HTTPPrint_server_name(void);
void HTTPPrint_out_port(void);
void HTTPPrint_in_port(void);
void HTTPPrint_RoomName(void);
void HTTPPrint_NodeName(void);
void HTTPPrint_delay_time(void);
void HTTPPrint_time_out(void);
void HTTPPrint_keep_alive(void);
void HTTPPrint_jittter_size(void);
void HTTPPrint_RX_AutoPolarity(void);
void HTTPPrint_TX_Polarity(void);
void HTTPPrint_COS_Check(void);
void HTTPPrint_SN_Squelch(void);
void HTTPPrint_CRC_Check(void);
void HTTPPrint_LastFrame(void);
void HTTPPrint_HeaderGen(void);
void HTTPPrint_HeaderGenType(void);
void HTTPPrint_HalfFull(void);
void HTTPPrint_RX_Polarity(void);
void HTTPPrint_AccCtrl(void);
void HTTPPrint_NtpName(void);
void HTTPPrint_TimeZone(void);
void HTTPPrint_CurDate(void);
void HTTPPrint_CurTime(void);
void HTTPPrint_CurPTT(void);
void HTTPPrint_CurCOS(void);
void HTTPPrint_CurSSN(void);
void HTTPPrint_CurUser(void);

void HTTPPrint(DWORD callbackID)
{
	switch(callbackID)
	{
        case 0x00000001:
			HTTPPrint_hellomsg();
			break;
        case 0x00000002:
			HTTPIncFile((ROM BYTE*)"footer.inc");
			break;
        case 0x00000025:
			HTTPPrint_config_mac();
			break;
        case 0x00000027:
			HTTPPrint_config_dhcpchecked();
			break;
        case 0x00000028:
			HTTPPrint_config_ip();
			break;
        case 0x00000029:
			HTTPPrint_config_gw();
			break;
        case 0x0000002a:
			HTTPPrint_config_subnet();
			break;
        case 0x0000002b:
			HTTPPrint_config_dns1();
			break;
        case 0x0000002c:
			HTTPPrint_config_dns2();
			break;
        case 0x0000002d:
			HTTPPrint_reboot();
			break;
        case 0x00000033:
			HTTPIncFile((ROM BYTE*)"header.inc");
			break;
        case 0x0000004a:
			HTTPPrint_server_name();
			break;
        case 0x0000004b:
			HTTPPrint_out_port();
			break;
        case 0x0000004c:
			HTTPPrint_in_port();
			break;
        case 0x0000004d:
			HTTPPrint_RoomName();
			break;
        case 0x0000004e:
			HTTPPrint_NodeName();
			break;
        case 0x00000051:
			HTTPPrint_delay_time();
			break;
        case 0x00000052:
			HTTPPrint_time_out();
			break;
        case 0x00000053:
			HTTPPrint_keep_alive();
			break;
        case 0x00000054:
			HTTPPrint_jittter_size();
			break;
        case 0x00000055:
			HTTPPrint_RX_AutoPolarity();
			break;
        case 0x00000056:
			HTTPPrint_TX_Polarity();
			break;
        case 0x00000057:
			HTTPPrint_COS_Check();
			break;
        case 0x00000058:
			HTTPPrint_SN_Squelch();
			break;
        case 0x00000059:
			HTTPPrint_CRC_Check();
			break;
        case 0x0000005a:
			HTTPPrint_LastFrame();
			break;
        case 0x0000005b:
			HTTPPrint_HeaderGen();
			break;
        case 0x0000005c:
			HTTPPrint_HeaderGenType();
			break;
        case 0x0000005d:
			HTTPPrint_HalfFull();
			break;
        case 0x0000005e:
			HTTPPrint_RX_Polarity();
			break;
        case 0x0000005f:
			HTTPPrint_AccCtrl();
			break;
        case 0x00000060:
			HTTPPrint_NtpName();
			break;
        case 0x00000061:
			HTTPPrint_TimeZone();
			break;
        case 0x00000063:
			HTTPPrint_CurDate();
			break;
        case 0x00000064:
			HTTPPrint_CurTime();
			break;
        case 0x00000066:
			HTTPPrint_CurPTT();
			break;
        case 0x00000067:
			HTTPPrint_CurCOS();
			break;
        case 0x00000068:
			HTTPPrint_CurSSN();
			break;
        case 0x00000069:
			HTTPPrint_CurUser();
			break;
		default:
			// Output notification for undefined values
			TCPPutROMArray(sktHTTP, (ROM BYTE*)"!DEF", 4);
	}

	return;
}

void HTTPPrint_(void)
{
	TCPPut(sktHTTP, '~');
	return;
}

#endif

#endif
