/*------------------------------------------------------------------------------------------------*/\r
-/* Unicens XML Parser */\r
+/* UNICENS XML Parser */\r
/* Copyright 2017, Microchip Technology Inc. and its subsidiaries. */\r
/* */\r
/* Redistribution and use in source and binary forms, with or without */\r
#include <stdlib.h>\r
#include <string.h>\r
#include <assert.h>\r
+#include "UcsXml.h"\r
#include "UcsXml_Private.h"\r
\r
static const char* USB_PHY_STANDARD = "Standard";\r
\r
static const char* MUTE_OFF = "NoMuting";\r
static const char* MUTE_SIGNAL = "MuteSignal";\r
-/*\r
-static const char* VAL_TRUE = "true";\r
-static const char* VAL_FALSE = "false";\r
- */\r
\r
-#define ASSERT_FALSE() { assert(false); return false; }\r
-#define CHECK_POINTER(PTR) if (NULL == PTR) { ASSERT_FALSE(); }\r
+#define __FILENAME__ (__builtin_strrchr(__FILE__, '/') ? __builtin_strrchr(__FILE__, '/') + 1 : __FILE__)\r
+#define ASSERT_FALSE(func, par) { UcsXml_CB_OnError("Parameter error in attribute=%s value=%s, file=%s, line=%d", 4, func, par, __FILENAME__, __LINE__); return false; }\r
+#define CHECK_POINTER(PTR) if (NULL == PTR) { ASSERT_FALSE(PTR, "NULL pointer"); }\r
\r
static int32_t Str2Int(const char *val)\r
{\r
soc->data_type = UCS_MOST_SCKT_DISC_FRAME_PHASE;\r
break;\r
default:\r
- ASSERT_FALSE();\r
+ ASSERT_FALSE("GetMostSocket->dataType", "");\r
}\r
return true;\r
}\r
port->physical_layer = UCS_USB_PHY_LAYER_STANDARD;\r
else if (0 == strcmp(USB_PHY_HSIC, param->physicalLayer))\r
port->physical_layer = UCS_USB_PHY_LAYER_HSCI;\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetUsbPort->physical_layer", param->physicalLayer);\r
return true;\r
}\r
\r
soc->data_type = UCS_USB_SCKT_IPC_PACKET;\r
break;\r
default:\r
- ASSERT_FALSE();\r
+ ASSERT_FALSE("GetUsbSocket->dataType", "");\r
}\r
soc->end_point_addr = (uint8_t)Str2Int(param->endpointAddress);\r
soc->frames_per_transfer = (uint16_t)Str2Int(param->framesPerTrans);\r
port->clock_config = UCS_MLB_CLK_CFG_6144_FS;\r
else if (0 == strcmp(param->clockConfig, CLOCK_8192FS))\r
port->clock_config = UCS_MLB_CLK_CFG_8192_FS;\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetMlbPort->clockConfig", param->clockConfig);\r
return true;\r
}\r
\r
soc->data_type = UCS_MLB_SCKT_IPC_PACKET;\r
break;\r
default:\r
- ASSERT_FALSE();\r
+ ASSERT_FALSE("GetMlbSocket->dataType", "");\r
}\r
soc->channel_address = (uint16_t)Str2Int(param->channelAddress);\r
soc->mlb_port_obj_ptr = param->mlbPort;\r
port->clock_config = UCS_STREAM_PORT_CLK_CFG_512FS;\r
else if (0 == strcmp(param->clockConfig, CLOCK_WILDCARD))\r
port->clock_config = UCS_STREAM_PORT_CLK_CFG_WILD;\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetStrmPort->clockConfig", param->clockConfig);\r
} else {\r
port->clock_config = UCS_STREAM_PORT_CLK_CFG_WILD;\r
}\r
port->data_alignment = UCS_STREAM_PORT_ALGN_RIGHT24BIT;\r
else if (0 == strcmp(param->dataAlignment, STRM_ALIGN_SEQUENTIAL))\r
port->data_alignment = UCS_STREAM_PORT_ALGN_SEQ;\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetStrmPort->dataAlignment", param->dataAlignment);\r
return true;\r
}\r
\r
soc->data_type = UCS_STREAM_PORT_SCKT_SYNC_DATA;\r
break;\r
default:\r
- ASSERT_FALSE();\r
+ ASSERT_FALSE("GetStrmSocket->dataType", "");\r
}\r
soc->bandwidth = param->bandwidth;\r
if (0 == strcmp(param->streamPin, I2S_PIN_SRXA0))\r
soc->stream_port_obj_ptr = param->streamPortB;\r
return true;\r
}\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetStrmSocket->streamPin", param->streamPin);\r
return true;\r
}\r
\r
con->mute_mode = UCS_SYNC_MUTE_MODE_NO_MUTING;\r
else if (0 == strcmp(param->muteMode, MUTE_SIGNAL))\r
con->mute_mode = UCS_SYNC_MUTE_MODE_MUTE_SIGNAL;\r
- else ASSERT_FALSE();\r
+ else ASSERT_FALSE("GetSyncCon->mute_mode", param->muteMode);\r
if (param->optional_offset)\r
con->offset = (uint16_t)Str2Int(param->optional_offset);\r
else\r
con->isoc_packet_size = UCS_ISOC_PCKT_SIZE_206;\r
break;\r
default:\r
- ASSERT_FALSE();\r
+ ASSERT_FALSE("GetAvpCon->isoc_packet_size", "");\r
}\r
} else {\r
con->isoc_packet_size = UCS_ISOC_PCKT_SIZE_188;\r
}\r
return true;\r
-}
\ No newline at end of file
+}\r