STK++ 0.9.13
STK_IMixtureInit.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------*/
2/* Copyright (C) 2004-2016 Serge Iovleff
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU Lesser General Public License as
6 published by the Free Software Foundation; either version 2 of the
7 License, or (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with this program; if not, write to the
16 Free Software Foundation, Inc.,
17 59 Temple Place,
18 Suite 330,
19 Boston, MA 02111-1307
20 USA
21
22 Contact : S..._DOT_I..._AT_stkpp.org (see copyright for ...)
23*/
24
25/*
26 * Project: stkpp::Clustering
27 * created on: 24 août 2013
28 * Author: iovleff, serge.iovleff@stkpp.org
29 * Originally created by Parmeet Bhatia <b..._DOT_p..._AT_gmail_Dot_com>
30 **/
31
37#ifndef STK_IMIXTUREINIT_H
38#define STK_IMIXTUREINIT_H
39
40#include <Sdk.h>
41#include "../STK_Clust_Util.h"
42
43namespace STK
44{
45// forward declaration
46class IMixtureComposer;
47class IMixtureAlgo;
48
56{
57 protected:
59 inline IMixtureInit(): IRunnerBase(), nbTry_(Clust::defaultNbInit), p_model_(0), p_initAlgo_(0) {}
66
67 public:
69 virtual ~IMixtureInit();
71 virtual IMixtureInit* clone() const = 0;
73 inline IMixtureAlgo const* const p_initAlgo() const { return p_initAlgo_;}
75 inline int nbTry() const { return nbTry_; }
77 inline void setNbTry(int nbTry) { nbTry_ = nbTry; }
82
83 protected:
85 int nbTry_;
94 bool runInitAlgo();
95};
96
97} // namespace STK
98
99#endif /* STK_MIXTUREINIT_H */
This file include all the other header files of the project Sdk.
Interface base class for the algorithms.
Base class for Mixture (composed) model.
Interface base class for the initializations.
void setModel(IMixtureComposer *p_model)
set a new model
void setNbTry(int nbTry)
set a the number of try
void setInitAlgo(IMixtureAlgo *p_initAlgo)
set the initial algorithm
IMixtureComposer * p_model_
pointer on the mixture model
IMixtureAlgo * p_initAlgo_
algorithm to use in the initialization
IMixtureInit(IMixtureInit const &init)
copy constructor.
virtual ~IMixtureInit()
destructor
virtual IMixtureInit * clone() const =0
clone pattern
IMixtureAlgo const *const p_initAlgo() const
set a the number of try
bool runInitAlgo()
launch the initialization algorithm.
int nbTry_
number of retry in initialization
IMixtureInit()
default constructor
Abstract base class for all classes having a.
Definition STK_IRunner.h:65
The MultidimRegression class allows to regress a multidimensional output variable among a multivariat...
The namespace STK is the main domain space of the Statistical ToolKit project.