iFun Engine API  1.0.0-b2601
Great Technology for Great Games
 All Classes Files Functions Variables Typedefs Macros
Macros | Typedefs | Enumerations
types.h File Reference
#include <boost/bind.hpp>
#include <boost/function.hpp>
#include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/thread.hpp>
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_io.hpp>
#include <boost/weak_ptr.hpp>
#include <funapi/network/fun_message.pb.h>
#include <stdint.h>
#include <string>
#include <vector>

Go to the source code of this file.

Macros

#define ASSERT_NO_ROLLBACK
 
#define DECLARE_CLASS_PTR(CLS)
 Utility macro to forward-declare smart pointer types for a given class. More...
 
#define DECLARE_EVENT(Event)   typedef fun::function<fun::ChainAction (Ptr<const Event>)> Handler;
 Utility macro to define a Funapi event type. More...
 
#define DEFINE_CLASS_PTR(CLS)
 Utility macro to define smart pointer types for a given class. More...
 
#define DEPRECATED(func)   func __attribute__((deprecated))
 
#define Ptr   boost::shared_ptr
 
#define ROLLBACK
 
#define WeakPtr   boost::weak_ptr
 

Typedefs

typedef std::string fun::string
 String type used throughout Funapi.
 
typedef boost::uuids::uuid fun::Uuid
 UUID type used throughout Funapi.
 

Enumerations

enum  ChainAction { CONTINUE = 0, fun::STOP, fun::NULLIFY, fun::ABORT }
 Action types to specify behavior in chained operations (i.e. More...
 

Macro Definition Documentation

#define DECLARE_CLASS_PTR (   CLS)
Value:
static const Ptr<CLS> kNullPtr; \
static const WeakPtr<CLS> kNullWeakPtr;
Parameters
CLSClass name.
See Also
DEFINE_CLASS_PTR(CLS)
#define DECLARE_EVENT (   Event)    typedef fun::function<fun::ChainAction (Ptr<const Event>)> Handler;

Event is simply a class that provides Handler interface.

Parameters
EventEvent name
#define DEFINE_CLASS_PTR (   CLS)
Value:
const Ptr<CLS> CLS::kNullPtr; \
const WeakPtr<CLS> CLS::kNullWeakPtr;

A class called DECLARE_CLASS_PTR(CLS) should also call this macro.

Parameters
CLSClass name.
See Also
DECLARE_CLASS_PTR(CLS)