DynProgr_sse_byte.h

Go to the documentation of this file.
00001 
00005 /*
00006  * Copyright (c) 2007-2008 ETH Zürich, Institute of Computational Science
00007  *
00008  * Permission is hereby granted, free of charge, to any person
00009  * obtaining a copy of this software and associated documentation
00010  * files (the "Software"), to deal in the Software without
00011  * restriction, including without limitation the rights to use,
00012  * copy, modify, merge, publish, distribute, sublicense, and/or sell
00013  * copies of the Software, and to permit persons to whom the
00014  * Software is furnished to do so, subject to the following
00015  * conditions:
00016  *
00017  * The above copyright notice and this permission notice shall be
00018  * included in all copies or substantial portions of the Software.
00019  *
00020  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00021  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
00022  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
00023  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
00024  * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
00025  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
00026  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
00027  * OTHER DEALINGS IN THE SOFTWARE.
00028  */
00029 
00030 #ifndef STRIPED_BYTE_H
00031 #define STRIPED_BYTE_H
00032 
00033 #include "swps3.h"
00034 #include "matrix.h"
00035 #include <xmmintrin.h>
00036 
00037 typedef struct{
00038         int len;
00039         unsigned char bias;
00040         __m128i * profile;
00041         __m128i * rD;
00042         __m128i * storeOpt;
00043         __m128i * loadOpt;
00044         u_int8_t data[1];
00045 } ProfileByte;
00046 
00047 ProfileByte * swps3_createProfileByteSSE( const char * query, int queryLen, SBMatrix matrix );
00048 double swps3_alignmentByteSSE( ProfileByte * query, const char * db, int dbLen, Options * options );
00049 void swps3_freeProfileByteSSE( ProfileByte * profile );
00050 
00051 #endif /* STRIPED_BYTE_H */

Generated on Thu Jun 5 12:44:37 2008 for swps3 by  doxygen 1.5.4