-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathT4ClassFormat.m
50 lines (40 loc) · 960 Bytes
/
T4ClassFormat.m
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
#import "T4ClassFormat.h"
@implementation T4ClassFormat
-initWithNumberOfClasses: (int)aNumClasses encodingSize: (int)anEncodingSize
{
if( (self = [super init]) )
{
classLabels = [[[T4Matrix alloc] initWithNumberOfRows: anEncodingSize numberOfColumns: aNumClasses]
keepWithAllocator: allocator];
}
return self;
}
-(int)encodingSize
{
return [classLabels numberOfRows];
}
-(int)numberOfClasses
{
return [classLabels numberOfColumns];
}
-(int)classFromRealArray: (real*)aVector
{
[self subclassResponsibility: _cmd];
return -1;
}
-(real*)encodingForClass: (int)aClass
{
return [classLabels columnAtIndex: aClass];
}
-initWithCoder: (NSCoder*)aCoder
{
self = [super initWithCoder: aCoder];
classLabels = [[aCoder decodeObject] retainAndKeepWithAllocator: allocator];
return self;
}
-(void)encodeWithCoder: (NSCoder*)aCoder
{
[super encodeWithCoder: aCoder];
[aCoder encodeObject: classLabels];
}
@end