cisst-saw
Toggle main menu visibility
Loading...
Searching...
No Matches
tmp
cisst-saw
cisst
cisstVector
vctRandomDynamicNArray.h
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3
4
/*
5
6
Author(s): Anton Deguet
7
Created on: 2007-02-11
8
9
(C) Copyright 2007-2026 Johns Hopkins University (JHU), All Rights
10
Reserved.
11
12
--- begin cisst license - do not edit ---
13
14
This software is provided "as is" under an open source license, with
15
no warranty. The complete license can be found in license.txt and
16
http://www.cisst.org/cisst/license.txt.
17
18
--- end cisst license ---
19
*/
20
21
#pragma once
22
#ifndef _vctRandomDynamicNArray_h
23
#define _vctRandomDynamicNArray_h
24
29
30
#include <
cisstCommon/cmnRandomSequence.h
>
31
#include <
cisstCommon/cmnPortability.h
>
32
33
#include <
cisstVector/vctForwardDeclarations.h
>
34
#include <
cisstVector/vctDynamicNArray.h
>
35
48
49
template
<
class
_nArrayOwnerType,
typename
_elementType, vct::
size_t
ype _dimension>
50
void
vctRandom
(
vctDynamicNArrayBase<_nArrayOwnerType, _elementType, _dimension>
& nArray,
51
const
typename
vctDynamicNArrayBase<_nArrayOwnerType, _elementType, _dimension>::value_type
min,
52
const
typename
vctDynamicNArrayBase<_nArrayOwnerType, _elementType, _dimension>::value_type
max)
53
{
54
cmnRandomSequence
& randomSequence =
cmnRandomSequence::GetInstance
();
55
typedef
typename
vctDynamicNArrayBase<_nArrayOwnerType, _elementType, _dimension>::iterator
iterator
;
56
iterator
iter;
57
const
iterator
end
= nArray.
end
();
58
for
(iter = nArray.
begin
(); iter !=
end
; iter++) {
59
randomSequence.
ExtractRandomValue
(min, max, *iter);
60
}
61
}
62
63
template
<
typename
_elementType, vct::
size_t
ype _dimension>
64
void
vctRandom
(
vctDynamicNArrayRef<_elementType, _dimension>
&& nArray,
65
const
typename
vctDynamicNArrayRef<_elementType, _dimension>::value_type
min,
66
const
typename
vctDynamicNArrayRef<_elementType, _dimension>::value_type
max)
67
{
68
typename
vctDynamicNArrayRef<_elementType, _dimension>::BaseType
& base = nArray;
69
vctRandom
(base, min, max);
70
}
71
72
73
#endif
// _vctRandomDynamicNArray_h
cmnRandomSequence
Provide an interface to a reproducible random sequence.
Definition
cmnRandomSequence.h:67
cmnRandomSequence::GetInstance
static cmnRandomSequence & GetInstance(void)
Definition
cmnRandomSequence.h:138
cmnRandomSequence::ExtractRandomValue
void ExtractRandomValue(_valueType &result)
vctDynamicNArrayBase
Definition
vctDynamicNArrayBase.h:41
vctDynamicNArrayBase::end
iterator end(void)
Definition
vctDynamicNArrayBase.h:104
vctDynamicNArrayBase::begin
iterator begin(void)
Definition
vctDynamicNArrayBase.h:91
vctDynamicNArrayBase::iterator
OwnerType::iterator iterator
Definition
vctDynamicNArrayBase.h:60
vctDynamicNArrayRef
Dynamic nArray referencing existing memory.
Definition
vctDynamicNArrayRef.h:89
vctDynamicNArrayRef::BaseType
vctDynamicNArrayBase< vctDynamicNArrayRefOwner< _elementType, DIMENSION >, _elementType, DIMENSION > BaseType
Definition
vctDynamicNArrayRef.h:99
cmnPortability.h
Portability across compilers and operating systems tools.
cmnRandomSequence.h
Randomization utilities for general use in CISST applications.
vctRandom
void vctRandom(vctDynamicMatrixBase< _matrixOwnerType, _elementType > &matrix, const typename vctDynamicMatrixBase< _matrixOwnerType, _elementType >::value_type min, const typename vctDynamicMatrixBase< _matrixOwnerType, _elementType >::value_type max)
Definition
vctRandomDynamicMatrix.h:47
end
const_iterator end(void) const
Definition
vctDynamicConstMatrixBase.h:209
iterator
OwnerType::iterator iterator
Definition
vctDynamicConstMatrixBase.h:92
vctDynamicNArray.h
Declaration of vctDynamicNArray.
vctForwardDeclarations.h
Forward declarations and #define for cisstVector.
Generated by
1.18.0