--- /dev/null
+
+// **********************************************************************
+// The Cheat - A universal game cheater for Mac OS X
+// (C) 2003-2005 Chaz McGarvey (BrokenZipper)
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 1, or (at your option)
+// any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+//
+
+#import "LocalCheater.h"
+
+
+@implementation Cheater
+
+
+// #############################################################################
+#pragma mark Initialization
+// #############################################################################
+
+- (id)initWithDelegate:(id)delegate
+{
+ if ( self = [self init] ) {
+ // set the delegate
+ [self setDelegate:delegate];
+ ChazLog( @"init Cheater %p", self );
+ }
+ return self;
+}
+
+- (void)dealloc
+{
+ ChazLog( @"dealloc Cheater %p", self );
+ [super dealloc];
+}
+
+
+- (id)delegate
+{
+ return _delegate;
+}
+
+- (void)setDelegate:(id)delegate
+{
+ // make sure the delegate is not nil and that it conforms to the CheaterDelegate
+ if ( [delegate conformsToProtocol:@protocol(CheaterDelegate)] ) {
+ _delegate = delegate;
+ }
+ else {
+ _delegate = nil;
+ }
+}
+
+
+- (BOOL)isConnected
+{
+ return _isConnected;
+}
+
+- (BOOL)isAuthenticated
+{
+ return _isAuthenticated;
+}
+
+- (NSString *)hostAddress
+{
+ return @"";
+}
+
+
+// #############################################################################
+#pragma mark Cheating Control
+// #############################################################################
+
+- (void)connect
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)disconnect
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)authenticateWithPassword:(NSString *)password
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)getProcessList
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)setTarget:(Process *)target
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)pauseTarget
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)resumeTarget
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)limitReturnedResults:(unsigned)limit
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)searchForVariable:(Variable *)data comparison:(TCSearchOperator)op
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)searchLastValuesComparison:(TCSearchOperator)op
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)cancelSearch
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)clearSearch
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)getMemoryDump
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)cancelMemoryDump
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)makeVariableChanges:(NSArray *)variables repeat:(BOOL)doRepeat interval:(NSTimeInterval)repeatInterval
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)stopChangingVariables
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)undo
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)redo
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+- (void)watchVariablesAtIndex:(unsigned)index count:(unsigned)count interval:(NSTimeInterval)checkInterval
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+- (void)stopWatchingVariables
+{
+ [NSException raise:@"TCNotImplemented" format:@"The subclass of Cheater (%@) needs to implement selector %@.",
+ NSStringFromClass(isa),
+ NSStringFromSelector(_cmd)];
+}
+
+
+@end