TREK source code

Hi,

Can anyone please explain the magic numbers in the TREK source code function.

For example. 330.0f, 48, 8205.13f etc…

float calc_length_data(float msgdatalen)
{
instance_data_t* inst = instance_get_local_structure_ptr(0);

int x = 0;

x = (int) ceil(msgdatalen*8/330.0f);

msgdatalen = msgdatalen*8 + x*48;

//assume PHR length is 172308ns for 110k and 21539ns for 850k/6.81M
if(inst->configData.dataRate == DWT_BR_110K)
{
	msgdatalen *= 8205.13f;
	msgdatalen += 172308; // PHR length in nanoseconds

}
else if(inst->configData.dataRate == DWT_BR_850K)
{
	msgdatalen *= 1025.64f;
	msgdatalen += 21539; // PHR length in nanoseconds
}
else
{
	msgdatalen *= 128.21f;
	msgdatalen += 21539; // PHR length in nanoseconds
}

return msgdatalen ;

}