VBundleObject.hpp

00001 #include <bundle/Bundle.hpp>
00002 
00003 #include <ocean/plankton/VObject.hpp>
00004 
00005 #ifdef  _WINDOWS
00006 
00007 #ifdef fishIO_EXPORTS
00008 #define FISHOBJECTS_API __declspec(dllexport)
00009 #else
00010 #define FISHOBJECTS_API __declspec(dllimport)
00011 #endif
00012 
00013 #else
00014 
00015 #define FISHOBJECTS_API 
00016 
00017 #endif
00018 
00019 
00020 namespace Wizt
00021 {
00022 
00023 using namespace Fiber;
00024 
00025 
00026 class   FISHOBJECTS_API VBundleObject : public VObject
00027 {
00028 public:
00029         BundlePtr               Bndl; 
00030         RefPtr<VParameter>      BundleParameter;
00031 
00032         VBundleObject(const BundlePtr&B, const string&name, int p, const RefPtr<VCreationPreferences>&VP);
00033 
00034         VBundleObject(const string&name, int p, const RefPtr<VCreationPreferences>&VP);
00035 
00036         ~VBundleObject();
00037 
00038         override bool implements(const type_info&what) const;
00039 
00040         override const RefPtr<VParameter>&getImplementation(const type_info&what, const string&name = "");
00041 
00042 };
00043 
00044 
00045 template <> 
00046 class   VValueTrait<BundlePtr>
00047 {
00048 public:
00049 static  bool setValueFromText(BundlePtr&i, const string&s)
00050         {
00051                 return false;
00052         }
00053 
00054 static  string Text(const BundlePtr&)
00055         {
00056                 return "<BUNDLE>";
00057         }
00058 
00059 };
00060 
00061 
00062 }