-
Notifications
You must be signed in to change notification settings - Fork 2
/
analyze.h
59 lines (33 loc) · 1.72 KB
/
analyze.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
OscillatorDesc oscillation(LifeList *cells, LifeList *working, int testUpTo);
int simpleSS(LifeList *cells, LifeList *working);
void makeWorkSpace(int n);
initMatchList(PartialOscillatorDesc *osc, int nmatches);
void bestMatches(LifeList *cells1, LifeList *cells2, int period,
int nmatches, PartialOscillatorDesc *osc);
void partialOscillation(LifeList *cells, LifeList *working,
int testUpTo, int testPhases,
int nmatches, PartialOscillatorDesc *posc);
/* not a public procedure */
int findTouching(LifeList *cells1, LifeList *cells2);
AlignmentList
firstTouch(LifeList *cells1, LifeList *cells2, int firstGen, int ngens);
void freeAlignmentList(AlignmentList list);
void dumpAlignments(AlignmentList list);
int emptyNeighbors(LifeList *cells);
int minNeighbors(LifeList *cells);
Transformation normalize(LifeList *cells);
int trail(LifeList *cells, int ngen, Cell *trail, int ntrail, int gen);
void spread(LifeList *cells, int distance);
History makeHistory(LifeList *cells, int ngenerations);
void freeHistory(History hist);
void dumpHistory(History hist);
void getGeneration(LifeList *cells, History hist, int gen);
int mostSurvives(LifeList *pattern, LifeList *perturb, int transl, int steps);
int survives(LifeList *pattern, LifeList *perturb, int transl, int steps,
int zero_ok);
void setupPerturbors(LifeList *perturbs, Cell *placed, int nplaced,
LifeList *justPerturbs, LifeList *reaction);
int placeNewPerturbor(LifeList *seed, LifeList *perturbs,
Cell *placed, int nplaced, int newperturb,
int initialGen, int finalGen, Cell *aligns,
int maxdamage);