diff options
author | Thomas Arnhold <thomas@arnhold.org> | 2014-05-13 08:42:21 +0200 |
---|---|---|
committer | Thomas Arnhold <thomas@arnhold.org> | 2014-05-17 12:40:39 +0000 |
commit | 9c3e819f066acaf9f5a416630fa7dd83fdc2539d (patch) | |
tree | b5d4e013b34d2a0f42cf9926b4c2919bd3c414db /sc/source/core/tool | |
parent | 3c1e30b77df4f34c4954bff37a08439ace7f2434 (diff) |
move boost rng wrapper from sc to comphelper
so we can re-use it in other modules
Change-Id: I6057b1e955f745019fd48f91a754279df0f2b948
Reviewed-on: https://gerrit.libreoffice.org/9348
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Tested-by: Thomas Arnhold <thomas@arnhold.org>
Diffstat (limited to 'sc/source/core/tool')
-rw-r--r-- | sc/source/core/tool/interpr1.cxx | 4 | ||||
-rw-r--r-- | sc/source/core/tool/random.cxx | 54 |
2 files changed, 2 insertions, 56 deletions
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx index ab82fc3f92f2..9223dc62853a 100644 --- a/sc/source/core/tool/interpr1.cxx +++ b/sc/source/core/tool/interpr1.cxx @@ -46,7 +46,6 @@ #include "globstr.hrc" #include "attrib.hxx" #include "jumpmatrix.hxx" -#include "random.hxx" #include "cellkeytranslator.hxx" #include "lookupcache.hxx" #include "rangenam.hxx" @@ -61,6 +60,7 @@ #include "compare.hxx" #include <comphelper/processfactory.hxx> +#include <comphelper/random.hxx> #include <comphelper/string.hxx> #include <svl/sharedstringpool.hxx> @@ -1680,7 +1680,7 @@ void ScInterpreter::ScPi() void ScInterpreter::ScRandom() { - PushDouble(sc::rng::uniform()); + PushDouble(::comphelper::rng::uniform()); } diff --git a/sc/source/core/tool/random.cxx b/sc/source/core/tool/random.cxx deleted file mode 100644 index 5affe374828e..000000000000 --- a/sc/source/core/tool/random.cxx +++ /dev/null @@ -1,54 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * Contributor(s): - * Copyright (C) 2012 Tino Kluge <tino.kluge@hrz.tu-chemnitz.de> - */ - -#include <boost/random.hpp> - -#include <random.hxx> - -// this is nothing but a simple wrapper around -// the boost random generators - -namespace sc -{ -namespace rng -{ - -// underlying random number generator -// boost::mt19937 implements the Mersenne twister algorithm which -// is fast and has good statistical properties, it produces integers -// in the range of [0, 2^32-1] internally -// memory requirement: 625*sizeof(uint32_t) -// http://en.wikipedia.org/wiki/Mersenne_twister -#define BOOST_RNG_ALGO boost::mt19937 -BOOST_RNG_ALGO global_rng; - -// initialises the state of the global random number generator -// should only be called once at the start of the main programme -// (note, a few boost::variate_generator<> (like normal) have their -// own state which would need a reset as well to guarantee identical -// sequence of numbers, e.g. via myrand.distribution().reset()) -void seed(int i) -{ - global_rng.seed(i); -} - -// uniform [0,1) or [a,b) distribution -double uniform() -{ - static boost::uniform_01<BOOST_RNG_ALGO&> myrand(global_rng); - return myrand(); -} - -} // namespace -} // namespace - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |