1 /**************************************************************
2  *** RHmm package
3  ***
4  *** File: Hmm.h
5  ***
6  *** Author: Ollivier TARAMASCO <Ollivier.Taramasco@imag.fr>
7  *** Author: Sebastian BAUER <sebastian.bauer@charite.de>
8  ***
9  **************************************************************/
10 
11 #ifndef _HMM_H_
12 #define _HMM_H_
13 #pragma once
14 
15 #ifdef _DEBOGAGE_
16 #include "Debogage.h"
17         #define MESS_CREAT(p){Rprintf("Creation de %s\n", (p)) ;}
18         #define MESS_DESTR(p){Rprintf("Destruction de %s\n", (p)) ;}
19         #define MESS(p) {Rprintf("%s\n", (p)) ;}
20 #else
21         #define MESS_CREAT(p)
22         #define MESS_DESTR(p)
23         #define MESS(p)
24 #endif //_DEBOGAGE
25 
26 #ifdef _RDLL_
27         #include <R.h>
28         #include <Rinternals.h>
29         #include <Rmath.h>
30 #else
31         #include "Kmeans.h"
32         #include "REquivalents.h"
33         #include "cRandomGenerator.h"
34 #endif //_RDLL_
35 
36 
37 #ifndef SQRT_TWO_PI
38         #define SQRT_TWO_PI     2.5066282746310002
39 #endif // SQRT_TWO_PI
40 
41 #ifndef MAX
42         #define MAX(p,q) ((p) > (q) ? (p) : (q))
43 #endif //MAX
44 
45 typedef unsigned int uint ;
46 typedef enum distrDefinitionEnum
47 {       eUnknownDistr = -1,
48         eNormalDistr = 0,
49         eMultiNormalDistr = 1,
50         eMixtUniNormalDistr = 2,
51         eMixtMultiNormalDistr = 3,
52         eDiscreteDistr=4
53 }distrDefinitionEnum;
54 
55 typedef enum initEnum
56 {       eRandom = 0,
57         eKMeans = 1,
58         eUser = 2
59 }initEnum;
60 #endif //_HMM_H_
61