Rythmos - Transient Integration for Differential Equations  Version of the Day
 All Classes Functions Variables Typedefs Pages
Public Member Functions | Protected Member Functions | List of all members
Rythmos::InterpolationBufferAppenderBase< Scalar > Class Template Referenceabstract

Base class for strategy objects that append data from one InterplationBufferBase object to another. More...

#include <Rythmos_InterpolationBufferAppenderBase.hpp>

Inheritance diagram for Rythmos::InterpolationBufferAppenderBase< Scalar >:
Inheritance graph
[legend]

Public Member Functions

virtual void append (const InterpolationBufferBase< Scalar > &interpBuffSource, const TimeRange< Scalar > &range, const Ptr< InterpolationBufferBase< Scalar > > &interpBuffSink)=0
 Append or Prepend data from one interpolation buffer into another. More...
 

Protected Member Functions

void assertAppendPreconditions (const InterpolationBufferBase< Scalar > &interpBuffSource, const TimeRange< Scalar > &range, const InterpolationBufferBase< Scalar > &interpBuffSink) const
 

Detailed Description

template<class Scalar>
class Rythmos::InterpolationBufferAppenderBase< Scalar >

Base class for strategy objects that append data from one InterplationBufferBase object to another.

Definition at line 50 of file Rythmos_InterpolationBufferAppenderBase.hpp.

Member Function Documentation

template<class Scalar >
virtual void Rythmos::InterpolationBufferAppenderBase< Scalar >::append ( const InterpolationBufferBase< Scalar > &  interpBuffSource,
const TimeRange< Scalar > &  range,
const Ptr< InterpolationBufferBase< Scalar > > &  interpBuffSink 
)
pure virtual

Append or Prepend data from one interpolation buffer into another.

Parameters
interpBuffSink[in/out] The interpolation buffer that will recieve the data from interpBuffSource interpolation buffer.
interpBuffSource[in] The interpolation buffer that will be queried to get interpolated values to put into interpBuffSink interoplation buffer.
range[in] The time range in interpBuffSource that will be converted into interpBuffSink interpolation buffer.

Preconditions:

  • (range.lower() == interpBuffSink->getTimeRange().upper()) || (range.upper() == interpBuffSink->getTimeRange().lower())
  • interpBuffSource.getTimeRange().lower() <= range.lower()
  • range.upper() <= interpBuffSource.getTimeRange().upper()

Postconditions:

  • if prior to the call range.lower() == interpBuffSink->getTimeRange().upper() then after the call interpBuffSink->getTimeRange().upper() == range.upper()
  • if prior to the call range.upper() == interpBuffSink->getTimeRange().lower() then after the call interpBuffSink->getTimeRange().lower() == range.lower()

Implemented in Rythmos::PointwiseInterpolationBufferAppender< Scalar >, and Rythmos::SmartInterpolationBufferAppender< Scalar >.

template<class Scalar >
void Rythmos::InterpolationBufferAppenderBase< Scalar >::assertAppendPreconditions ( const InterpolationBufferBase< Scalar > &  interpBuffSource,
const TimeRange< Scalar > &  range,
const InterpolationBufferBase< Scalar > &  interpBuffSink 
) const
protected

Definition at line 101 of file Rythmos_InterpolationBufferAppenderBase.hpp.


The documentation for this class was generated from the following file: