public/IForwardSys.h
changeset 589 5c1dd0ca6191
parent 559 c406cafbc312
child 615 c4aa259cca88
     1.1 --- a/public/IForwardSys.h	Sat Mar 10 13:36:38 2007 +0000
     1.2 +++ b/public/IForwardSys.h	Sat Mar 10 21:02:40 2007 +0000
     1.3 @@ -37,7 +37,7 @@
     1.4  using namespace SourcePawn;
     1.5  
     1.6  #define SMINTERFACE_FORWARDMANAGER_NAME		"IForwardManager"
     1.7 -#define SMINTERFACE_FORWARDMANAGER_VERSION	1
     1.8 +#define SMINTERFACE_FORWARDMANAGER_VERSION	2
     1.9  
    1.10  /*
    1.11   * There is some very important documentation at the bottom of this file.
    1.12 @@ -177,14 +177,10 @@
    1.13  		 *
    1.14  		 * @param inarray	Array to copy.  Cannot be NULL, unlike ICallable's version.
    1.15  		 * @param cells		Number of cells to allocate and optionally read from the input array.
    1.16 -		 * @param phys_addr	Unused.  If a value is passed, it will be filled with NULL.
    1.17  		 * @param flags		Whether or not changes should be copied back to the input array.
    1.18  		 * @return			Error code, if any.
    1.19  		 */
    1.20 -		virtual int PushArray(cell_t *inarray, 
    1.21 -								unsigned int cells, 
    1.22 -								cell_t **phys_addr, 
    1.23 -								int flags=0) =0;
    1.24 +		virtual int PushArray(cell_t *inarray, unsigned int cells, int flags=0) =0;
    1.25  	};
    1.26  
    1.27  	/**
    1.28 @@ -270,6 +266,14 @@
    1.29  		{
    1.30  			return SMINTERFACE_FORWARDMANAGER_VERSION;
    1.31  		}
    1.32 +		virtual bool IsVersionCompatible(unsigned int version)
    1.33 +		{
    1.34 +			if (version < 2 || version > GetInterfaceVersion())
    1.35 +			{
    1.36 +				return false;
    1.37 +			}
    1.38 +			return true;
    1.39 +		}
    1.40  	public:
    1.41  		/**
    1.42  		 * @brief Creates a managed forward.  This forward exists globally.