Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Institute of Technical Acoustics (ITA)
VACore
Commits
caff6470
Commit
caff6470
authored
Jan 18, 2017
by
Jonas Stienen
Browse files
Merge branch 'develop' of
https://git.rwth-aachen.de/ita/VACore
into develop
parents
53936af7
f9b1bd37
Changes
21
Hide whitespace changes
Inline
Side-by-side
.gitignore
0 → 100644
View file @
caff6470
HTML
*.bat
*.mat
*.pdf
*.dll
*.exe
*.so*
Thumbs.db
.DS_Store
*.asv
*.wav
*.xlsx
*.docx
*.dll
*.csv
*.h5
*.ita
*.fig
*.png
*.jpeg
*.sofa
*.spk
*.unv
*.stl
svnaccess
*.lib
*.exp
include/VACoreDefinitions.h
View file @
caff6470
...
...
@@ -11,8 +11,8 @@
* --------------------------------------------------------------------------------------------
*/
#ifndef
VA_INCLUDE_GUARD
_VACORE_DEFINITIONS
#define
VA_INCLUDE_GUARD
_VACORE_DEFINITIONS
#ifndef
IW
_VACORE_DEFINITIONS
#define
IW
_VACORE_DEFINITIONS
#include <string>
#include <vector>
...
...
@@ -32,4 +32,4 @@
#pragma warning( disable: 4251 )
#endif
#endif //
VA_INCLUDE_GUARD
_VACORE_DEFINITIONS
#endif //
IW
_VACORE_DEFINITIONS
include/VACoreFactory.h
View file @
caff6470
...
...
@@ -11,8 +11,8 @@
* ---------------------------------------------------------------------------------
*/
#ifndef I
NCLUDE_WATCHER_VA
_COREFACTORY
_H
#define I
NCLUDE_WATCHER_VA
_COREFACTORY
_H
#ifndef I
W_VACORE
_CORE
_
FACTORY
#define I
W_VACORE
_CORE
_
FACTORY
#include <VACoreDefinitions.h>
#include <VAStruct.h>
...
...
@@ -41,4 +41,4 @@ namespace VACore
}
// End of namespace "VACore"
#endif // I
NCLUDE_WATCHER_VA
_COREFACTORY
_H
#endif // I
W_VACORE
_CORE
_
FACTORY
include/VAObjectPool.h
View file @
caff6470
/*
* --------------------------------------------------------------------------------------------
*
* VVV VVV A
* VVV VVV AAA Virtual Acoustics
* VVV VVV AAA Virtual Acoustics
(VA)
* VVV VVV AAA Real-time auralisation for virtual reality
* VVV VVV AAA
* VVVVVV AAA (c) Copyright Institut
fr
Techni
sche Ak
usti
k
(ITA)
* VVVV AAA RWTH Aachen (http://www.akustik.rwth-aachen.de)
* VVVVVV AAA (c) Copyright Institut
e of
Techni
cal Aco
usti
cs
(ITA)
, 2015-2017
* VVVV AAA RWTH Aachen
University
(http://www.akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
*
* File: VAObjectPool.h
*
* Purpose: Object pool class
*
* Author(s): Frank Wefers (Frank.Wefers@akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
* --------------------------------------------------------------------------------------------
*/
#ifndef
_
_VA_OBJECTPOOL
_H__
#define
_
_VA_OBJECTPOOL
_H__
#ifndef
IW
_VA
CORE
_OBJECT
_
POOL
#define
IW
_VA
CORE
_OBJECT
_
POOL
#include <VACoreDefinitions.h>
...
...
@@ -43,7 +36,7 @@ class IVAPoolObjectFactory;
*
* Creation and deletion of objects is abstracted and is implemented in a way that
* reusage is lightweight and effizient. Usage/Links of objects is realised by
* reference counters. A release is triggert, if an object does not have any
* reference counters. A release is triggert, if an object does not have any
* remaining references.
*
* The pool creates object by using a factory that has to be provided. Therefore,
...
...
@@ -52,7 +45,8 @@ class IVAPoolObjectFactory;
*
* \note Not thread safe, thread safety has to be provided by user
*/
class
VACORE_API
IVAObjectPool
:
public
IVAUncopyable
{
class
VACORE_API
IVAObjectPool
:
public
IVAUncopyable
{
public:
//! Factory method
/**
...
...
@@ -63,7 +57,7 @@ public:
*
* \return Pointer to the newly created pool of unused objects
*/
static
IVAObjectPool
*
Create
(
int
iInitialSize
,
int
iDelta
,
IVAPoolObjectFactory
*
pFactory
,
bool
bDeleteFactory
);
static
IVAObjectPool
*
Create
(
int
iInitialSize
,
int
iDelta
,
IVAPoolObjectFactory
*
pFactory
,
bool
bDeleteFactory
);
//! Destructor
virtual
~
IVAObjectPool
()
{};
...
...
@@ -72,32 +66,32 @@ public:
/**
* Set name of the pool (for debugging purposes only)
*/
virtual
void
SetName
(
const
std
::
string
&
sName
)
=
0
;
virtual
void
SetName
(
const
std
::
string
&
sName
)
=
0
;
//! Reset
/**
* Resets pool by quick reference removal of all objects. Does not
* change size of pool.
*/
virtual
void
Reset
()
=
0
;
virtual
void
Reset
()
=
0
;
//! Number of free object slots
/**
* \return Number of free objects that can be requested
*/
virtual
int
GetNumFree
()
const
=
0
;
virtual
int
GetNumFree
()
const
=
0
;
//! Number of used object slots
/**
* \return Number of used objects that can be requested
*/
virtual
int
GetNumUsed
()
const
=
0
;
virtual
int
GetNumUsed
()
const
=
0
;
//! Pool size getter
/**
* \return Number of available slots for objects
*/
virtual
int
GetSize
()
const
=
0
;
virtual
int
GetSize
()
const
=
0
;
//! Increase pool size
/**
...
...
@@ -105,7 +99,7 @@ public:
*
* \param Returns number of created object slots (iDelta)
*/
virtual
int
Grow
(
int
iDelta
)
=
0
;
virtual
int
Grow
(
int
iDelta
)
=
0
;
//! Request a free object slot in pool
/**
...
...
@@ -113,14 +107,14 @@ public:
*
* \return Pointer to the new object
*/
virtual
CVAPoolObject
*
RequestObject
()
=
0
;
virtual
CVAPoolObject
*
RequestObject
()
=
0
;
protected:
//! Release-Hook (used by IVAPoolObject implementations)
/**
* Releases object to the pool if no reference available anymore
*/
virtual
void
ReleaseObject
(
CVAPoolObject
*
pObject
)
=
0
;
virtual
void
ReleaseObject
(
CVAPoolObject
*
pObject
)
=
0
;
// Access for CVAPoolObject to RemoveReference()
friend
class
CVAPoolObject
;
...
...
@@ -136,7 +130,8 @@ protected:
* for new usage (recycling). The object releases itself to
* the pool if no references are existent.
*/
class
VACORE_API
CVAPoolObject
:
public
IVAUncopyable
,
public
CVAReferenceableObject
{
class
VACORE_API
CVAPoolObject
:
public
IVAUncopyable
,
public
CVAReferenceableObject
{
public:
//! Redefined method to remove reference
/**
...
...
@@ -163,7 +158,7 @@ protected:
* The PreRequest method is called before the object is used
*/
virtual
void
PreRequest
()
{};
//! Pre release method
/**
* The PreRelease method is called after the object has been released
...
...
@@ -182,17 +177,18 @@ private:
/**
* Interface for the creation of a pool object (factory method)
*/
class
VACORE_API
IVAPoolObjectFactory
{
class
VACORE_API
IVAPoolObjectFactory
{
public:
virtual
~
IVAPoolObjectFactory
()
{};
inline
virtual
~
IVAPoolObjectFactory
()
{};
//! Factory method (abstract)
/**
* Interface method to create a new pool object
*
*
* \return Pointer to the new pool object
*/
virtual
CVAPoolObject
*
CreatePoolObject
()
=
0
;
virtual
CVAPoolObject
*
CreatePoolObject
()
=
0
;
};
...
...
@@ -200,7 +196,8 @@ public:
/**
* Pool object factory for objects using the default constructor
*/
template
<
class
T
>
class
CVAPoolObjectDefaultFactory
:
public
IVAPoolObjectFactory
{
template
<
class
T
>
class
CVAPoolObjectDefaultFactory
:
public
IVAPoolObjectFactory
{
public:
//! Factory method
/**
...
...
@@ -208,7 +205,10 @@ public:
*
* \return Pointer to the new pool object
*/
virtual
CVAPoolObject
*
CreatePoolObject
()
{
return
new
T
;
}
inline
virtual
CVAPoolObject
*
CreatePoolObject
()
{
return
new
T
;
}
};
#endif // __VA_OBJECTPOOL_H__
\ No newline at end of file
#endif // IW_VACORE_OBJECT_POOL
\ No newline at end of file
include/VAReferenceableObject.h
View file @
caff6470
/*
* --------------------------------------------------------------------------------------------
*
* VVV VVV A
* VVV VVV AAA Virtual Acoustics
* VVV VVV AAA Virtual Acoustics
(VA)
* VVV VVV AAA Real-time auralisation for virtual reality
* VVV VVV AAA
* VVVVVV AAA (c) Copyright Institut
fr
Techni
sche Ak
usti
k
(ITA)
* VVVV AAA RWTH Aachen (http://www.akustik.rwth-aachen.de)
* VVVVVV AAA (c) Copyright Institut
e of
Techni
cal Aco
usti
cs
(ITA)
, 2015-2017
* VVVV AAA RWTH Aachen
University
(http://www.akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
*
* File: VAReferenceableObject.h
*
* Purpose: Base class for referencable objects
*
* Author(s): Frank Wefers (Frank.Wefers@akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
* --------------------------------------------------------------------------------------------
*/
// $Id: VAReferenceableObject.h 2729 2012-06-26 13:23:36Z fwefers $
#ifndef __VA_REFERENCEABLE_OBJECT_H__
#define __VA_REFERENCEABLE_OBJECT_H__
...
...
include/VAUncopyable.h
View file @
caff6470
/*
* --------------------------------------------------------------------------------------------
*
* VVV VVV A
* VVV VVV AAA Virtual Acoustics
* VVV VVV AAA Virtual Acoustics
(VA)
* VVV VVV AAA Real-time auralisation for virtual reality
* VVV VVV AAA
* VVVVVV AAA (c) Copyright Institut
fr
Techni
sche Ak
usti
k
(ITA)
* VVVV AAA RWTH Aachen (http://www.akustik.rwth-aachen.de)
* VVVVVV AAA (c) Copyright Institut
e of
Techni
cal Aco
usti
cs
(ITA)
, 2015-2017
* VVVV AAA RWTH Aachen
University
(http://www.akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
*
* File: VAUncopyable.h
*
* Purpose: Suppress copy actions of objects
*
* Author(s): Frank Wefers (Frank.Wefers@akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
* --------------------------------------------------------------------------------------------
*/
// $Id: VAUncopyable.h 1790 2011-04-12 20:08:07Z stienen $
#ifndef __VA_UNCOPYABLE_H__
#define __VA_UNCOPYABLE_H__
#ifndef IW_VACORE_UNCOPYABLE
#define IW_VACORE_UNCOPYABLE
#include <VACoreDefinitions.h>
...
...
@@ -30,20 +22,21 @@
/**
* Derive your class from VAUncopyable to block any copy instruction.
*/
class
VACORE_API
IVAUncopyable
{
class
VACORE_API
IVAUncopyable
{
protected:
//! For subclasses: standard constructor available
IVAUncopyable
()
{};
inline
IVAUncopyable
()
{};
//! For subclasses: destructor available
virtual
~
IVAUncopyable
()
{};
inline
virtual
~
IVAUncopyable
()
{};
private:
//! Forbidden for everyone: copy constructor
IVAUncopyable
(
const
IVAUncopyable
&
)
{};
inline
IVAUncopyable
(
const
IVAUncopyable
&
)
{};
//! Forbidden for everyone: assignment operator
IVAUncopyable
&
operator
=
(
const
IVAUncopyable
&
);
IVAUncopyable
&
operator
=
(
const
IVAUncopyable
&
);
};
#endif // __VA_UNCOPYABLE_H__
\ No newline at end of file
#endif // IW_VACORE_UNCOPYABLE
\ No newline at end of file
src/Audiosignals/VAAudioSignalSourceManager.cpp
View file @
caff6470
...
...
@@ -227,20 +227,15 @@ std::string CVAAudioSignalSourceManager::CreateAudiofileSignalSource(const std::
std
::
string
CVAAudioSignalSourceManager
::
CreateSequencerSignalSource
(
const
std
::
string
&
sName
)
{
// Sampler-Quellen sind immer managed und dynamisch
CVASequencerSignalSource
*
pSource
=
new
CVASequencerSignalSource
(
m_dSamplerate
,
m_iBlocklength
,
m_pParentCore
->
GetSamplePool
());
return
RegisterSignalSource
(
pSource
,
sName
,
true
,
true
);
CVASequencerSignalSource
*
pSource
=
new
CVASequencerSignalSource
(
m_dSamplerate
,
m_iBlocklength
,
m_pParentCore
->
GetSamplePool
()
);
return
RegisterSignalSource
(
pSource
,
sName
,
true
,
true
);
}
std
::
string
CVAAudioSignalSourceManager
::
CreateNetstreamSignalSource
(
const
std
::
string
&
sBindAddress
,
int
iRecvPort
,
const
std
::
string
&
sName
)
std
::
string
CVAAudioSignalSourceManager
::
CreateNetstreamSignalSource
(
const
std
::
string
&
sBindAddress
,
int
iRecvPort
,
const
std
::
string
&
sName
)
{
/*
// Datei-Quellen sind immer managed und dynamisch
CVANetstreamSignalSource* pSource = new CVANetstreamSignalSource(m_dSamplerate, m_iBlocklength, sBindAddress, iRecvPort);
return RegisterSignalSource(pSource, sName, true, true);
*/
return
""
;
CVANetstreamSignalSource
*
pSource
=
new
CVANetstreamSignalSource
(
m_dSamplerate
,
m_iBlocklength
,
sBindAddress
,
iRecvPort
);
return
RegisterSignalSource
(
pSource
,
sName
,
true
,
true
);
}
std
::
string
CVAAudioSignalSourceManager
::
CreateEngineSignalSource
(
const
std
::
string
&
sName
)
...
...
src/Audiosignals/VANetstreamSignalSource.cpp
View file @
caff6470
#include "VANetstreamSignalSource.h"
#include <ITAException.h>
#include <ITABufferDataSource.h>
#include <sstream>
#include <VAException.h>
CVANetstreamSignalSource
::
CVANetstreamSignalSource
(
double
dDestinationSamplerate
,
int
iBlocklength
,
const
std
::
string
&
sBindAddress
,
int
iRecvPort
)
:
m_pAssociatedCore
(
NULL
)
{
// TODO: ...
}
#include <ITANetAudioStream.h>
#include "../VAAudiostreamTracker.h"
CVANetstreamSignalSource
::~
CVANetstreamSignalSource
()
{
// TODO: ...
}
#include <sstream>
std
::
string
CVANetstreamSignalSource
::
GetBindAddress
()
const
{
// TODO: ...
return
""
;
CVANetstreamSignalSource
::
CVANetstreamSignalSource
(
double
dDestinationSamplerate
,
int
iBlocklength
,
const
std
::
string
&
sBindAddress
,
int
iRecvPort
)
:
m_pAssociatedCore
(
NULL
)
{
m_pSourceStream
=
new
CITANetAudioStream
(
1
,
dDestinationSamplerate
,
iBlocklength
,
12
*
iBlocklength
);
if
(
!
m_pSourceStream
->
Connect
(
sBindAddress
,
iRecvPort
)
)
VA_EXCEPT2
(
INVALID_PARAMETER
,
"Could not connect to network audio streaming server"
);
}
int
CVANetstreamSignalSource
::
GetRecvPort
()
const
{
// TODO: ...
return
0
;
CVANetstreamSignalSource
::~
CVANetstreamSignalSource
()
{
delete
m_pSourceStream
;
m_pSourceStream
=
NULL
;
}
std
::
string
CVANetstreamSignalSource
::
GetTypeString
()
const
{
std
::
string
CVANetstreamSignalSource
::
GetTypeString
()
const
{
return
"Network stream"
;
}
std
::
string
CVANetstreamSignalSource
::
GetTypeMnemonic
()
const
{
std
::
string
CVANetstreamSignalSource
::
GetTypeMnemonic
()
const
{
return
"ns"
;
}
std
::
string
CVANetstreamSignalSource
::
GetDesc
()
const
{
std
::
string
CVANetstreamSignalSource
::
GetDesc
()
const
{
std
::
stringstream
ss
;
ss
<<
"Plays the network audio stream received on "
<<
GetBindAddress
()
<<
":"
<<
GetRecvPort
();
ss
<<
"Plays the network audio stream"
;
return
ss
.
str
();
}
std
::
string
CVANetstreamSignalSource
::
GetStateString
()
const
{
return
"<TODO: State string>"
;
std
::
string
CVANetstreamSignalSource
::
GetStateString
()
const
{
if
(
m_pSourceStream
->
GetIsConnected
()
)
return
"Connected"
;
else
return
"Disconnected"
;
}
IVACore
*
CVANetstreamSignalSource
::
GetAssociatedCore
()
const
{
IVACore
*
CVANetstreamSignalSource
::
GetAssociatedCore
()
const
{
return
m_pAssociatedCore
;
}
ITADatasource
*
CVANetstreamSignalSource
::
GetStreamingDatasource
()
const
{
// TODO: ...
return
NULL
;
ITADatasource
*
CVANetstreamSignalSource
::
GetStreamingDatasource
()
const
{
return
m_pSourceStream
;
}
void
CVANetstreamSignalSource
::
HandleRegistration
(
IVACore
*
pParentCore
)
{
const
float
*
CVANetstreamSignalSource
::
GetStreamBlock
(
const
CVAAudiostreamState
*
pStreamInfo
)
{
const
float
*
pfSignalSourceData
=
m_pSourceStream
->
GetBlockPointer
(
0
,
dynamic_cast
<
const
CVAAudiostreamStateImpl
*
>
(
pStreamInfo
)
);
m_pSourceStream
->
IncrementBlockPointer
();
return
pfSignalSourceData
;
}
void
CVANetstreamSignalSource
::
HandleRegistration
(
IVACore
*
pParentCore
)
{
m_pAssociatedCore
=
pParentCore
;
}
void
CVANetstreamSignalSource
::
HandleUnregistration
(
IVACore
*
pParentCore
)
{
void
CVANetstreamSignalSource
::
HandleUnregistration
(
IVACore
*
)
{
m_pAssociatedCore
=
NULL
;
}
\ No newline at end of file
}
src/Audiosignals/VANetstreamSignalSource.h
View file @
caff6470
...
...
@@ -4,19 +4,16 @@
#include "VAAudioSignalSource.h"
#include <string>
class
ITABufferDatasource
;
class
IVACore
;
class
CITANetAudioStream
;
class
ITADatasource
;
/**
* Diese Klasse realisiert Audiosignalquellen, welche Audiodaten
* per Netzwerk-Stream empfangen und diese dann freisetzen.
* Mit solchen Quellen knnen in VA Audiosignale von externen Rechnern
* eingespielt werden (z.B. fr Klangsynthese).
/** Network audio stream class
*
*
TODO: Momentan ist die Klasse nur ein Stub. Sie muss noch implementiert werden
.
*
Can be used i.e. for complex physical sound synthesis on another processing unit
.
*/
class
CVANetstreamSignalSource
:
public
IVAAudioSignalSource
{
class
CVANetstreamSignalSource
:
public
IVAAudioSignalSource
{
public:
/**
* \param dDestinationSamplerate Abtastrate die vorrausgesetzt wird
...
...
@@ -24,34 +21,28 @@ public:
* \param sBindAddress Netzwerk-Adresse an den gebunden wird
* \param iRecvPort Eingangsport auf dem gelauscht wird.
*/
CVANetstreamSignalSource
(
double
dDestinationSamplerate
,
int
iBlocklength
,
const
std
::
string
&
sBindAddress
,
int
iRecvPort
);
CVANetstreamSignalSource
(
double
dDestinationSamplerate
,
int
iBlocklength
,
const
std
::
string
&
sBindAddress
,
int
iRecvPort
);
virtual
~
CVANetstreamSignalSource
();
std
::
string
GetBindAddress
()
const
;
int
GetRecvPort
()
const
;
// Zukunftsmusik ...
// int GetDropouts();
// --= Schnittstelle IVAAudioSignalSource =-------------------------
std
::
string
GetTypeString
()
const
;
std
::
string
GetTypeMnemonic
()
const
;
std
::
string
GetDesc
()
const
;
std
::
string
GetStateString
()
const
;
IVACore
*
GetAssociatedCore
()
const
;
ITADatasource
*
GetStreamingDatasource
()
const
;
inline
int
GetType
()
const
{
return
VA_SS_NETSTREAM
;
};
const
float
*
GetStreamBlock
(
const
CVAAudiostreamState
*
pStreamInfo
);
CVAStruct
GetParameters
(
const
CVAStruct
&
)
const
{
return
CVAStruct
();
};
virtual
void
SetParameters
(
const
CVAStruct
&
)
{};
private:
IVACore
*
m_pAssociatedCore
;
ITA
BufferDatasource
*
m_pFileDatasource
;
IVACore
*
m_pAssociatedCore
;
//!< TODO needed?
C
ITA
NetAudioStream
*
m_pSourceStream
;
void
HandleRegistration
(
IVACore
*
pParentCore
);
void
HandleUnregistration
(
IVACore
*
pParentCore
);
void
HandleRegistration
(
IVACore
*
pParentCore
);
void
HandleUnregistration
(
IVACore
*
pParentCore
);
};
#endif // __VA_NETSTREAMSIGNALSOURCE_H__
src/Audiosignals/_SourceFiles.cmake
View file @
caff6470
...
...
@@ -14,8 +14,8 @@ set( DirFiles
VAEngineSignalSource.h
VAMachineSignalSource.cpp
VAMachineSignalSource.h
#
VANetstreamSignalSource.cpp
#
VANetstreamSignalSource.h
VANetstreamSignalSource.cpp
VANetstreamSignalSource.h
#VAPureDataSignalSource.cpp
#VAPureDataSignalSource.h
VASequencerSignalSource.cpp
...
...
src/Data/VAHRIRDataset.h
View file @
caff6470
/*
*
* VVV VVV A
* VVV VVV AAA Virtual Acoustics
* VVV VVV AAA Real-time auralisation for virtual reality
* VVV VVV AAA
* VVVVVV AAA (c) Copyright Institut fr Technische Akustik (ITA)
* VVVV AAA RWTH Aachen (http://www.akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
*
* Datei: VAHRIRDataset.h
*
* Zweck: Schnittstelle fr HRIR-Datenstze
*
* Autor(en): Frank Wefers (Frank.Wefers@akustik.rwth-aachen.de)
*
* ---------------------------------------------------------------------------------
*/
// $Id: VAHRIRDataset.h 4497 2016-01-29 15:24:15Z stienen $
#ifndef __VA_HRIRDATASET__
#define __VA_HRIRDATASET__
...
...
src/Filtering/VAVariableDelayLine.cpp
View file @
caff6470
...
...
@@ -474,7 +474,8 @@ void CVAVariableDelayLine::Process(const ITASampleBuffer* psbInput, ITASampleBuf
}
#if (VA_VDL_DATA_LOG == 1)
std
::
ostream
&
CVAVariableDelayLine
::
VDLLogData
::
outputDesc
(
std
::
ostream
&
os
)
const
{
std
::
ostream
&
CVAVariableDelayLine
::
VDLLogData
::
outputDesc
(
std
::
ostream
&
os
)
{
os
<<
"Current delay"
<<
"
\t
"
<<
"New delay"
<<
"
\t
"
<<
"Resampling factor"
<<
"
\t
"
...
...
src/Filtering/VAVariableDelayLine.h
View file @
caff6470
...
...
@@ -264,7 +264,7 @@ private:
//! Implementierungsklasse für Logger-Datum
class
VDLLogData
:
ITALogDataBase
{
public:
std
::
ostream
&
outputDesc
(
std
::
ostream
&
os
)
const
;
static
std
::
ostream
&
outputDesc
(
std
::
ostream
&
os
);
std
::
ostream
&
outputData
(
std
::
ostream
&
os
)
const
;
float
fCurrentDelay
;
...
...
src/Motion/VAMotionModelBase.cpp
View file @
caff6470
...
...
@@ -272,7 +272,7 @@ void CVABasicMotionModel::SetName(const std::string& sNewName)
m_oEstimationDataLog
.
setOutputFile
(
sNewName
+
"_Estimated.log"
);
}
std
::
ostream
&
CVABasicMotionModel
::
MotionLogDataOutput
::
outputDesc
(
std
::
ostream
&
os
)
const
std
::
ostream
&
CVABasicMotionModel
::
MotionLogDataOutput
::
outputDesc
(
std
::
ostream
&
os
)
{
os
<<
"Estimation time"
<<
"
\t
"
<<
"Estimated Position [x]"
<<
"
\t
"
...
...
@@ -307,7 +307,7 @@ std::ostream& CVABasicMotionModel::MotionLogDataOutput::outputData(std::ostream&
return
os
;
}
std
::
ostream
&
CVABasicMotionModel
::
MotionLogDataInput
::
outputDesc
(
std
::
ostream
&
os
)
const
std
::
ostream
&
CVABasicMotionModel
::
MotionLogDataInput
::
outputDesc
(
std
::
ostream
&
os
)
{