MusicKit  0.0.0
MKPartPerformer.h
00001 /*
00002   $Id$
00003   Defined In: The MusicKit
00004 
00005   Description:
00006     See class description below.
00007  
00008    Original Author: David A. Jaffe
00009 
00010   Copyright (c) 1988-1992, NeXT Computer, Inc.
00011   Portions Copyright (c) 1994 NeXT Computer, Inc. and reproduced under license from NeXT
00012   Portions Copyright (c) 1994 Stanford University.
00013   Portions Copyright (c) 1999-2011, The MusicKit Project.
00014 */
00056 #ifndef __MK_PartPerformer_H___
00057 #define __MK_PartPerformer_H___
00058 
00059 #import "MKPerformer.h"
00060 #import "MKScorePerformer.h"
00061 
00062 @interface MKPartPerformer : MKPerformer
00063 {
00064     MKNote *nextNote;            
00065     MKPart *part;                
00066     double firstTimeTag;         
00067     double lastTimeTag;          
00069 @private
00070     int noteIndex;
00071     int noteCount;
00072     NSArray *noteArray;
00073     MKScorePerformer *scorePerformer;
00074 }
00075 
00093 + setFastActivation: (BOOL) yesOrNo;
00094 
00101 + (BOOL) fastActivation;
00102 
00112 - init;
00113 
00123 - setPart: (MKPart *) aPart; 
00124 
00129 - (MKPart *) part;
00130 
00150 - activateSelf; 
00151 
00159 - (void) deactivate; 
00160 
00178 - perform; 
00179 
00189 - setFirstTimeTag: (double) aTimeTag; 
00190 
00200 - setLastTimeTag: (double) aTimeTag; 
00201 
00208 - (double) firstTimeTag; 
00209 
00216 - (double) lastTimeTag; 
00217 
00229 - copyWithZone: (NSZone *) zone; 
00230 
00231 /* 
00232   You never send this message directly.  
00233   Invokes superclass write: then archives firstTimeTag and lastTimeTag.
00234   Optionally archives part using NXWriteObjectReference().
00235  */
00236 - (void) encodeWithCoder: (NSCoder *) aCoder;
00237 
00238 /* 
00239   Note that -init is not sent to newly unarchived objects.
00240  */
00241 - (id) initWithCoder: (NSCoder *) aDecoder;
00242 
00243 @end
00244 
00245 #endif