core/interfaces/IPluginFunction.h
changeset 192 dee91851dcd4
parent 185 5e0987d38ee0
child 211 4c77142eaf36
     1.1 --- a/core/interfaces/IPluginFunction.h	Wed Dec 06 00:53:34 2006 +0000
     1.2 +++ b/core/interfaces/IPluginFunction.h	Wed Dec 06 14:52:11 2006 +0000
     1.3 @@ -7,6 +7,9 @@
     1.4  {
     1.5  	#define SM_FUNCFLAG_COPYBACK		(1<<0)		/* Copy an array/reference back after call */
     1.6  
     1.7 +	#define SP_STRING_UTF8				(1<<0)		/* String should be UTF-8 handled */
     1.8 +	#define SP_STRING_COPY				(1<<1)		/* String should be copied into the plugin */
     1.9 +
    1.10  	/**
    1.11  	 * @brief Represents what a function needs to implement in order to be callable.
    1.12  	 */
    1.13 @@ -83,14 +86,16 @@
    1.14  		virtual int PushString(const char *string) =0;
    1.15  
    1.16  		/**
    1.17 -		 * @brief Pushes a string onto the current call.
    1.18 +		 * @brief Pushes a string or string buffer.
    1.19  		 * NOTE: On Execute, the pointer passed will be modified if copy-back is enabled.
    1.20  		 *
    1.21 -		 * @param string	String to push.
    1.22 -		 * @param flags		Copy-back flags.
    1.23 +		 * @param buffer	Pointer to string buffer.
    1.24 +		 * @param length	Length of buffer.
    1.25 +		 * @param sz_flags	String flags.
    1.26 +		 * @param cp_flags	Copy-back flags.
    1.27  		 * @return			Error code, if any.
    1.28  		 */
    1.29 -		virtual int PushStringEx(char *string, int flags) =0;
    1.30 +		virtual int PushStringEx(char *buffer, size_t length, int sz_flags, int cp_flags) =0;
    1.31  
    1.32  		/**
    1.33  		 * @brief Cancels a function call that is being pushed but not yet executed.