shithub: libvpx

Download patch

ref: c0e80959ce459e9dcef3a0bfd659c4544d25a448
parent: a9cb6f69183f8924d17846e0c327978c1bddefa4
author: Johann <johannkoenig@google.com>
date: Fri Jul 20 07:51:06 EDT 2012

Move ACMRandom to acm_random.h

Change-Id: I1d99c56d1e1f521507978737fc661ca90af72507

--- /dev/null
+++ b/test/acm_random.h
@@ -1,0 +1,48 @@
+/*
+ *  Copyright (c) 2012 The WebM project authors. All Rights Reserved.
+ *
+ *  Use of this source code is governed by a BSD-style license
+ *  that can be found in the LICENSE file in the root of the source
+ *  tree. An additional intellectual property rights grant can be found
+ *  in the file PATENTS.  All contributing project authors may
+ *  be found in the AUTHORS file in the root of the source tree.
+ */
+
+#ifndef LIBVPX_TEST_ACM_RANDOM_H_
+#define LIBVPX_TEST_ACM_RANDOM_H_
+
+#include <stdint.h>
+#include <stdlib.h>
+
+namespace libvpx_test {
+
+class ACMRandom {
+ public:
+  explicit ACMRandom(int seed) {
+    Reset(seed);
+  }
+
+  void Reset(int seed) {
+    srand(seed);
+  }
+
+  uint8_t Rand8(void) {
+    return (rand() >> 8) & 0xff;
+  }
+
+  int PseudoUniform(int range) {
+    return (rand() >> 8) % range;
+  }
+
+  int operator()(int n) {
+    return PseudoUniform(n);
+  }
+
+  static int DeterministicSeed(void) {
+    return 0xbaba;
+  }
+};
+
+}  // namespace libvpx_test
+
+#endif  // LIBVPX_TEST_ACM_RANDOM_H_
--- a/test/boolcoder_test.cc
+++ b/test/boolcoder_test.cc
@@ -20,27 +20,15 @@
 #include <string.h>
 #include <sys/types.h>
 
+#include "test/acm_random.h"
 #include "third_party/googletest/src/include/gtest/gtest.h"
 #include "vpx/vpx_integer.h"
 
 namespace {
 const int num_tests = 10;
-
-class ACMRandom {
- public:
-  explicit ACMRandom(int seed) { Reset(seed); }
-
-  void Reset(int seed) { srand(seed); }
-
-  uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
-  int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
-  int operator()(int n) { return PseudoUniform(n); }
-
-  static int DeterministicSeed(void) { return 0xbaba; }
-};
 }  // namespace
+
+using libvpx_test::ACMRandom;
 
 TEST(VP8, TestBitIO) {
   ACMRandom rnd(ACMRandom::DeterministicSeed());
--- a/test/fdct4x4_test.cc
+++ b/test/fdct4x4_test.cc
@@ -21,6 +21,7 @@
 #include "vpx_rtcd.h"
 }
 
+#include "test/acm_random.h"
 #include "third_party/googletest/src/include/gtest/gtest.h"
 #include "vpx/vpx_integer.h"
 
@@ -70,22 +71,7 @@
   }
 }
 
-// This is a class that generate random numbers for test input.
-class ACMRandom {
-public:
-  explicit ACMRandom(int seed) { Reset(seed); }
-
-  void Reset(int seed) { srand(seed); }
-
-  uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
-  int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
-  int operator()(int n) { return PseudoUniform(n); }
-
-  static int DeterministicSeed(void) { return 0xbaba; }
-};
-
+using libvpx_test::ACMRandom;
 
 TEST(Vp8FdctTest, SignBiasCheck) {
   ACMRandom rnd(ACMRandom::DeterministicSeed());
--- a/test/sixtap_predict_test.cc
+++ b/test/sixtap_predict_test.cc
@@ -11,6 +11,7 @@
 #include <math.h>
 #include <stdlib.h>
 #include <string.h>
+#include "test/acm_random.h"
 #include "test/util.h"
 #include "third_party/googletest/src/include/gtest/gtest.h"
 extern "C" {
@@ -22,21 +23,6 @@
 
 namespace {
 
-class ACMRandom {
- public:
-  explicit ACMRandom(int seed) { Reset(seed); }
-
-  void Reset(int seed) { srand(seed); }
-
-  uint8_t Rand8(void) { return (rand() >> 8) & 0xff; }
-
-  int PseudoUniform(int range) { return (rand() >> 8) % range; }
-
-  int operator()(int n) { return PseudoUniform(n); }
-
-  static int DeterministicSeed(void) { return 0xbaba; }
-};
-
 typedef void (*sixtap_predict_fn_t)(uint8_t *src_ptr,
                                     int  src_pixels_per_line,
                                     int  xoffset,
@@ -138,6 +124,8 @@
       ASSERT_EQ(expected_dst[i * kDstStride + j], dst_[i * kDstStride + j])
           << "i==" << (i * width_ + j);
 }
+
+using libvpx_test::ACMRandom;
 
 TEST_P(SixtapPredictTest, TestWithRandomData) {
   const size_t src_size = sizeof(src_) / sizeof(uint8_t);
--- a/test/test.mk
+++ b/test/test.mk
@@ -1,3 +1,4 @@
+LIBVPX_TEST_SRCS-yes += acm_random.h
 LIBVPX_TEST_SRCS-yes += test.mk
 LIBVPX_TEST_SRCS-yes += test_libvpx.cc
 LIBVPX_TEST_SRCS-yes += util.h