HI,
This is my code, in three files (last one containing main)
//
// FF_dcm2niiTask.h
// FF_dcm2nii
//
// Created by Fabrizio Fasano on 1/13/10.
// Copyright 2010 _MyCompanyName_. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface FF_dcm2niiTask : NSTask
{
int aNumber;
}
-(void) chooseSource;
-(void) executeTask;
-(void) printaNumber;
@end
//
// FF_dcm2niiTask.m
// FF_dcm2nii
//
// Created by Fabrizio Fasano on 1/13/10.
// Copyright 2010 _MyCompanyName_. All rights reserved.
//
#import "FF_dcm2niiTask.h"
@implementation FF_dcm2niiTask
-(void) chooseSource
{
aNumber=1;
}
-(void) executeTask
{
aNumber=2;
}
-(void) printaNumber
{
NSLog(@"the aNumber value is: %i", aNumber);
}
@end
#import <Foundation/Foundation.h>
#import "FF_dcm2niiTask.h"
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
FF_dcm2niiTask *myTask;
myTask = [FF_dcm2niiTask alloc];
[myTask init];
[myTask setLaunchPath: @"/bin/ls"];
NSArray *arguments;
arguments = [NSArray arrayWithObjects: @"-l", @"-a", @"-t", nil];
[myTask setArguments: arguments];
NSPipe *pipe;
pipe = [NSPipe pipe];
[myTask setStandardOutput: pipe];
NSFileHandle *file;
file = [pipe fileHandleForReading];
[myTask launch];
NSData *data;
data = [file readDataToEndOfFile];
NSString *string;
string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSLog (@"woop! got %@", string);
// work with class
[myTask chooseSource];
[myTask printaNumber];
[myTask executeTask];
[myTask printaNumber];
[myTask release];
[pool drain];
return 0;
}