X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=Variable.h;h=93776b68b350f502d29d687ebda407a71eed727d;hb=refs%2Fheads%2Fmaster;hp=fc3d83b9b73b449b94d44102d95ef3320256bb37;hpb=d27548f80fe411fda2ee69c74a24eab4292267e9;p=chaz%2Fthecheat diff --git a/Variable.h b/Variable.h index fc3d83b..93776b6 100644 --- a/Variable.h +++ b/Variable.h @@ -1,48 +1,50 @@ -// ********************************************************************** -// 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. -// +/* + * The Cheat - The legendary universal game trainer for Mac OS X. + * http://www.brokenzipper.com/trac/wiki/TheCheat + * + * Copyright (c) 2003-2011, Charles McGarvey et al. + * + * Distributable under the terms and conditions of the 2-clause BSD + * license; see the file COPYING for the legal text of the license. + */ #import #import "CheaterTypes.h" +#import "Process.h" #include #define TC_MAX_VAR_SIZE (256) - @interface Variable : NSObject < NSCoding > { TCAddress _address; BOOL _isValueValid; BOOL _enabled; +#if MAC_OS_X_VERSION_10_5 <= MAC_OS_X_VERSION_MAX_ALLOWED + NSInteger _tag; +#else int _tag; +#endif + + Process *process; @public; // use the accessor methods unless you need fast access // do not change these variables directly or things will be screwed. TCVariableType _type; TCIntegerSign _integerSign; - unsigned _size; +#if MAC_OS_X_VERSION_10_5 <= MAC_OS_X_VERSION_MAX_ALLOWED + NSUInteger _size; +#else + unsigned int _size; +#endif void *_value; + BOOL _isEmulated; } // ############################################################################# @@ -55,6 +57,11 @@ - (id)initWithType:(TCVariableType)type; // default: TCSigned - (id)initWithType:(TCVariableType)type integerSign:(TCIntegerSign)sign; +- (void)setProcess:(Process *)process; +- (Process *)process; + +- (BOOL)isEmulated; + // ############################################################################# #pragma mark NSCoding // ############################################################################# @@ -81,13 +88,20 @@ - (NSString *)stringValue; - (BOOL)setStringValue:(NSString *)value; +void bigEndianValue(void *buffer, Variable *variable); + - (unsigned)valueSize; - (BOOL)isValueValid; - (BOOL)isEnabled; - (void)setEnabled:(BOOL)enabled; +#if MAC_OS_X_VERSION_10_5 <= MAC_OS_X_VERSION_MAX_ALLOWED +- (NSInteger)tag; +- (void)setTag:(NSInteger)tag; +#else - (int)tag; - (void)setTag:(int)tag; +#endif @end