Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Poirier <theeth@yahoo.com>2008-11-19 23:01:13 +0300
committerMartin Poirier <theeth@yahoo.com>2008-11-19 23:01:13 +0300
commit9bb9859753a18d9a72ac0cb482a765c4e40f4676 (patch)
tree6efaba60b5a71a04a1482e53be77e5d838462abe /source/blender/blenlib/BLI_graph.h
parent9ba822c4d76bd84699e3980d1f12e58a200c006f (diff)
draft for arc iterators to unify code.
Just moving code to work home, nothing to see here.
Diffstat (limited to 'source/blender/blenlib/BLI_graph.h')
-rw-r--r--source/blender/blenlib/BLI_graph.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_graph.h b/source/blender/blenlib/BLI_graph.h
index 160c2e04cf5..12ca87577d5 100644
--- a/source/blender/blenlib/BLI_graph.h
+++ b/source/blender/blenlib/BLI_graph.h
@@ -60,6 +60,24 @@ typedef struct BArc {
int symmetry_flag;
} BArc;
+struct BArcIterator;
+
+typedef float* (*PeekPointFct)(struct BArcIterator* iter, int n);
+typedef float* (*NextPointFct)(struct BArcIterator* iter);
+typedef float* (*CurrentPointFct)(struct BArcIterator* iter);
+typedef float* (*PreviousPointFct)(struct BArcIterator* iter);
+typedef int (*StoppedFct)(struct BArcIterator* iter);
+
+typedef struct BArcIterator {
+ PeekPointFct peek;
+ NextPointFct next;
+ CurrentPointFct current;
+ PreviousPointFct previous;
+ StoppedFct stopped;
+
+ int length;
+} BArcIterator;
+
/* Helper structure for radial symmetry */
typedef struct RadialArc
{