58 lines
2.2 KiB
Plaintext
58 lines
2.2 KiB
Plaintext
$OpenBSD: patch-reedsolomon_cpp,v 1.1 2010/05/09 15:30:53 robert Exp $
|
|
--- reedsolomon.cpp.orig Sun May 9 17:26:56 2010
|
|
+++ reedsolomon.cpp Sun May 9 17:28:12 2010
|
|
@@ -51,7 +51,7 @@ u32 gcd(u32 a, u32 b)
|
|
}
|
|
}
|
|
|
|
-bool ReedSolomon<Galois8>::SetInput(const vector<bool> &present)
|
|
+template<> bool ReedSolomon<Galois8>::SetInput(const vector<bool> &present)
|
|
{
|
|
inputcount = (u32)present.size();
|
|
|
|
@@ -80,7 +80,7 @@ bool ReedSolomon<Galois8>::SetInput(const vector<bool>
|
|
return true;
|
|
}
|
|
|
|
-bool ReedSolomon<Galois8>::SetInput(u32 count)
|
|
+template<> bool ReedSolomon<Galois8>::SetInput(u32 count)
|
|
{
|
|
inputcount = count;
|
|
|
|
@@ -101,7 +101,7 @@ bool ReedSolomon<Galois8>::SetInput(u32 count)
|
|
return true;
|
|
}
|
|
|
|
-bool ReedSolomon<Galois8>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
|
|
+template<> bool ReedSolomon<Galois8>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
|
|
{
|
|
// Look up the appropriate element in the RS matrix
|
|
Galois8 factor = leftmatrix[outputindex * (datapresent + datamissing) + inputindex];
|
|
@@ -189,7 +189,7 @@ bool ReedSolomon<Galois8>::Process(size_t size, u32 in
|
|
|
|
// Set which of the source files are present and which are missing
|
|
// and compute the base values to use for the vandermonde matrix.
|
|
-bool ReedSolomon<Galois16>::SetInput(const vector<bool> &present)
|
|
+template<> bool ReedSolomon<Galois16>::SetInput(const vector<bool> &present)
|
|
{
|
|
inputcount = (u32)present.size();
|
|
|
|
@@ -233,7 +233,7 @@ bool ReedSolomon<Galois16>::SetInput(const vector<bool
|
|
|
|
// Record that the specified number of source files are all present
|
|
// and compute the base values to use for the vandermonde matrix.
|
|
-bool ReedSolomon<Galois16>::SetInput(u32 count)
|
|
+template<> bool ReedSolomon<Galois16>::SetInput(u32 count)
|
|
{
|
|
inputcount = count;
|
|
|
|
@@ -267,7 +267,7 @@ bool ReedSolomon<Galois16>::SetInput(u32 count)
|
|
return true;
|
|
}
|
|
|
|
-bool ReedSolomon<Galois16>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
|
|
+template<> bool ReedSolomon<Galois16>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
|
|
{
|
|
// Look up the appropriate element in the RS matrix
|
|
|