Пример #1
0
 std::string StringImpl::descData( void const *data ) const
 {
   std::string result = "\"";
   size_t length = getValueLength(data);
   if ( length > 64 )
   {
     result.append( getValueData(data), 64 );
     result += "...";
   }
   else if ( length )
     result += getValueData(data);
   result += "\"";
   return result;
 }
Пример #2
0
 int StringImpl::compare( void const *lhsData, void const *rhsData ) const
 {
   char const *lhsStringData = getValueData( lhsData );
   size_t lhsStringLength = getValueLength( lhsData );
   char const *rhsStringData = getValueData( rhsData );
   size_t rhsStringLength = getValueLength( rhsData );
   size_t minStringLength = std::min( lhsStringLength, rhsStringLength );
   int cmp = memcmp( lhsStringData, rhsStringData, minStringLength );
   if ( cmp == 0 )
   {
     if ( lhsStringLength < rhsStringLength )
       return -1;
     else if ( lhsStringLength == rhsStringLength )
       return 0;
     else return 1;
   }
   else return cmp;
 }
Пример #3
0
 size_t StringImpl::hash( void const *data ) const
 {
   // [pzion 20111014] This hash function is referred to as djb2.
   // Thanks Manon!!
   size_t stringLength = getValueLength( data );
   uint8_t const *stringData = reinterpret_cast<uint8_t const *>( getValueData( data ) );
   size_t result = 5381;
   while ( stringLength > 0 )
   {
     result = ((result << 5) + result) ^ uint32_t(*stringData);
     --stringLength;
     ++stringData;
   }
   return result;
 }
Пример #4
0
void Matrix::mostrar(void)
{
	printf("[");
	for(int fila=1;fila<=Matrix::numFilas;fila++)
	{
		for(int columna=1;columna<=Matrix::numColumnas;columna++)
		{
			printf("%f",getValueData(fila,columna));
			if(columna<numColumnas)
				printf(" ");
			else if(fila<numFilas)
				printf(";\n ");
			else
				printf("]\n");
		}
	}
}
Пример #5
0
void sendUDPMessageWithValue(char msg[64], uint16_t value)
{

	UdpData msgData = getMsgData(msg);
	UdpData valData = getValueData(value);
	UdpData result;
	result.length = (msgData.length + valData.length);
	for(int i=0;i<msgData.length;i++)
	{
		result.msg[i] = msgData.msg[i];
	}
	for(int j=msgData.length;j<result.length;j++)
	{
		result.msg[j] = valData.msg[j-msgData.length];
	}
	sendUDPData(result);
}
Пример #6
0
 void StringImpl::encodeJSON( void const *data, JSON::Encoder &encoder ) const
 {
   encoder.makeString( getValueData(data), getValueLength(data) );
 }
Пример #7
0
void sendUDPValue(uint16_t value)
{
	UdpData data = getValueData(value);
	sendUDPData(data);

}