interreality.org [VOS]
[Home] [About]
[Screenshots]
[Download]
[News]
[Community]
[Documentation] [Manual]
[Bugs & Requests] [Wiki]

/home/tetron/hack/vos/libs/vos/metaobjects/misc/search.hh

Go to the documentation of this file.
00001 #ifndef _SEARCH_HH_
00002 #define _SEARCH_HH_
00003 
00004 #include <vos/vos/vos.hh>
00005 
00006 #include "miscdefs.hh"
00007 #include "parsenode.hh"
00008 
00009 #ifndef MISC_EXPORTS
00010 IMPORT_METAOBJECT_FACTORIES(Search)
00011 #endif
00012 
00013 namespace VOS {
00014     MISC_API ParseNode* doSearchParse(const std::string& startrule);
00015     MISC_API void printParseTree(ParseNode* pn, int depth = 0);
00016 
00017     class MISC_API LocalSearch : public MetaObject
00018     {
00019     public:
00020         LocalSearch(VobjectBase* supeobject);
00021         static MetaObject* new_LocalSearch(VobjectBase* superobject, const std::string& type);
00022         virtual const std::string getVOSType();
00023         void handleSearch(Message* m);
00024     };
00025 
00026     class MISC_API RemoteSearch : public MetaObject
00027     {
00028     public:
00029         RemoteSearch(VobjectBase* supeobject);
00030         static MetaObject* new_RemoteSearch(VobjectBase* superobject, const std::string& type);
00031         virtual const std::string getVOSType();
00032 
00033         void search(Vobject* start, const std::string& startrule, VobjectStore** cod, const std::string& rules, ProgressMeterCallback* progress = 0);
00034     };
00035 }
00036 
00037 #endif