7 #ifndef _QI_TYPE_METAOBJECT_HPP_
8 #define _QI_TYPE_METAOBJECT_HPP_
15 # pragma warning( push )
16 # pragma warning( disable: 4251 )
21 class MetaObjectPrivate;
22 class GenericFunctionParameters;
36 int methodId(
const std::string &nameWithSignature)
const;
41 int signalId(
const std::string &name)
const;
46 int propertyId(
const std::string& name)
const;
48 using MethodMap = std::map<unsigned int, MetaMethod>;
55 using SignalMap = std::map<unsigned int, MetaSignal>;
72 const MetaMethod* method(
unsigned int id)
const;
79 const MetaSignal* signal(
unsigned int id)
const;
84 const MetaSignal* signal(
const std::string &name)
const;
106 int findMethod(
const std::string& nameWithOptionalSignature,
const GenericFunctionParameters& args,
bool* canCache=0)
const;
111 std::vector<MetaMethod> findMethod(
const std::string &name)
const;
119 std::vector<CompatibleMethod> findCompatibleMethod(
const std::string &nameOrSignature)
const;
127 static bool isPrivateMember(
const std::string &name,
unsigned int uid);
139 std::string description()
const;
141 MetaObjectPrivate *
_p;
143 const PropertyMap& propertyMap,
const std::string& description);
148 class MetaObjectBuilderPrivate;
153 void setDescription(
const std::string& desc);
155 const std::string &name,
159 unsigned int addSignal(
const std::string &name,
const qi::Signature& sig,
int id = -1);
160 unsigned int addProperty(
const std::string& name,
const qi::Signature& sig,
int id = -1);
165 boost::shared_ptr<MetaObjectBuilderPrivate> _p;
176 # pragma warning( pop )
179 #endif // _QITYPE_METAOBJECT_HPP_
void printMetaObject(std::ostream &stream, const qi::MetaObject &metaObject, bool color=true, bool showHidden=false, bool showDoc=false, bool raw=false, bool parseable=false)
LogColor color()
Get log color.
bool operator<(const AnyReference &a, const AnyReference &b)