//
// fMRIData.h
// fMRI Visualizer
//
// Created by Paolo on 29/03/10.
// Copyright 2010 __MyCompanyName__. All rights reserved.
//
#import <C3DT/C3DT.h>
// This can't be used if we filter fibers in real-time
//#define USE_DISPLAY_LIST
typedef enum {
kSwapXY,
kSwapXZ,
kSwapYZ
} SwapCoordType;
typedef struct _fMRIPoint {
GLfloat x;
GLfloat y;
GLfloat z;
GLfloat w; // unused: needed for alignment to 128 bit
GLfloat r;
GLfloat g;
GLfloat b;
GLfloat a; // unused
} fMRIPoint;
@interface fMRIData : C3DTGeometry {
GLint *indexes;
GLint *counts;
GLfloat *lengths;
GLint numFibers;
GLint allocFibers;
GLint *filteredIndexes;
GLint *filteredCounts;
GLint numFilteredFibers;
GLint allocFilteredFibers;
fMRIPoint *points;
GLint numPoints;
GLint allocPoints;
_C3DTBounds bounds;
}
+ (id)dataWithFile: (NSString *)dataFilePath;
- (id)initWithFile: (NSString *)dataFilePath;
- (void)filterLengthLongerThan: (float)len;
- (void)swapCoordsType: (SwapCoordType)sType;
- (_C3DTBounds)bounds;
@end