Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Aug 21, 2010, 10:20:09 PM (14 years ago)
Author:
landauf
Message:

LuaFunctor better doesn't inherit from Functor since it's used completely differently. Saves us the hassle of exporting FunctorPtr to Lua and a bunch of useless functions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/consolecommands3/src/libraries/core/LuaState.h

    r7189 r7199  
    4040
    4141#include "util/ScopeGuard.h"
    42 #include "Functor.h"
    4342#include "ToluaInterface.h"
    4443
    4544namespace orxonox // tolua_export
    4645{ // tolua_export
    47     class Functor; // tolua_export
     46    class LuaFunctor; // tolua_export
    4847
    49     //! Functor subclass that simply executes code with 0 arguments.
    50     class _CoreExport LuaFunctor : public Functor
     48    //! callback class that executes lua code
     49    class _CoreExport LuaFunctor
    5150    {
    5251        public:
    5352            LuaFunctor(const std::string& code, LuaState* luaState);
    54             MultiType operator()(const MultiType& param1 = MT_Type::Null, const MultiType& param2 = MT_Type::Null, const MultiType& param3 = MT_Type::Null, const MultiType& param4 = MT_Type::Null, const MultiType& param5 = MT_Type::Null);
    55             void evaluateParam(unsigned int index, MultiType& param) const {}
    56 
    57             Functor::Type::Enum getType() const { return Functor::Type::Lua; } \
    58             unsigned int getParamCount() const { return 0; }
    59             bool hasReturnvalue() const { return 0; }
    60             std::string getTypenameParam(unsigned int param) const { return BLANKSTRING; }
    61             std::string getTypenameReturnvalue() const { return BLANKSTRING; }
    62 
    63             const std::type_info& getHeaderIdentifier() const { return typeid(this); }
     53            void operator()();
    6454
    6555        private:
     
    9989        const shared_ptr<ResourceInfo>& getDefaultResourceInfo() { return this->sourceFileInfo_; }
    10090
    101         Functor* createLuaFunctor(const std::string& code) { return new LuaFunctor(code, this); } // tolua_export
     91        LuaFunctor* createLuaFunctor(const std::string& code) { return new LuaFunctor(code, this); } // tolua_export
    10292        //! Tells about whether IOConsole was activated. The Lua debugger only works with a normal console.
    10393        bool usingIOConsole() const; // tolua_export
Note: See TracChangeset for help on using the changeset viewer.