Modules
Numerics
include
mirtk
ScalarFunction.h
1
/*
2
* Medical Image Registration ToolKit (MIRTK)
3
*
4
* Copyright 2008-2015 Imperial College London
5
* Copyright 2008-2015 Daniel Rueckert, Julia Schnabel
6
*
7
* Licensed under the Apache License, Version 2.0 (the "License");
8
* you may not use this file except in compliance with the License.
9
* You may obtain a copy of the License at
10
*
11
* http://www.apache.org/licenses/LICENSE-2.0
12
*
13
* Unless required by applicable law or agreed to in writing, software
14
* distributed under the License is distributed on an "AS IS" BASIS,
15
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
* See the License for the specific language governing permissions and
17
* limitations under the License.
18
*/
19
20
#ifndef MIRTK_ScalarFunction_H
21
#define MIRTK_ScalarFunction_H
22
23
#include "mirtk/Object.h"
24
25
26
namespace
mirtk
{
27
28
29
/**
30
* Base class of scalar functions.
31
*/
32
class
ScalarFunction
:
public
Object
33
{
34
mirtkAbstractMacro(
ScalarFunction
);
35
36
public
:
37
38
/// Virtual destructor
39
virtual
~ScalarFunction
() {}
40
41
/// Evaluation function (pure virtual)
42
virtual
double
Evaluate
(
double
x,
double
y,
double
z) = 0;
43
44
};
45
46
47
}
// namespace mirtk
48
49
#endif // MIRTK_ScalarFunction_H
mirtk::ScalarFunction
Definition:
ScalarFunction.h:32
mirtk
Definition:
IOConfig.h:41
mirtk::ScalarFunction::Evaluate
virtual double Evaluate(double x, double y, double z)=0
Evaluation function (pure virtual)
mirtk::Object
Definition:
Object.h:51
mirtk::ScalarFunction::~ScalarFunction
virtual ~ScalarFunction()
Virtual destructor.
Definition:
ScalarFunction.h:39