Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals
reflect » test

reflect/test/bar.cpp

Go to the documentation of this file.
00001 //
00002 // Copyright (c) 2003
00003 // Paul Hamilton; pHamtec P/L
00004 //
00005 // Permission to use, copy, modify, distribute and sell this software
00006 // and its documentation for any purpose is hereby granted without fee, 
00007 // provided that the above copyright notice appears in all copies and 
00008 // that both the copyright notice and this permission notice appear in 
00009 // supporting documentation. No representations are made about the 
00010 // suitability of this software for any purpose. It is provided "as is" 
00011 // without express or implied warranty.
00012 //
00013 // bar.cpp
00014 //
00015 // 4-Jul-2003 phamilton Created
00016 //
00017 
00018 #include "bar.hpp"
00019 #include "../member.hpp"
00020 #include "../member_visitor.hpp"
00021 #include "../object_visitor.hpp"
00022 
00023 using namespace ph::reflect;
00024 using namespace reflect_test;
00025 
00026 bool bar::accept(ph::common::member_visitor *v)
00027 {
00028 if (!base::accept(v))
00029 return false;
00030 pod_member<int> _x(&x); 
00031 if (!v->visit(this, "x", &_x)) 
00032 return false;
00033 pod_member<double> _y(&y); 
00034 if (!v->visit(this, "y", &_y)) 
00035 return false;
00036 pod_member<int> _z(&z); 
00037 if (!v->visit(this, "z", &_z)) 
00038 return false;
00039 return true;
00040 }
00041 
00042 bool bar::accept(ph::common::const_member_visitor *v) const
00043 { 
00044 if (!base::accept(v))
00045 return false;
00046 const_pod_member<int> _x(&x); 
00047 if (!v->visit(this, "x", &_x)) 
00048 return false;
00049 const_pod_member<double> _y(&y); 
00050 if (!v->visit(this, "y", &_y)) 
00051 return false;
00052 const_pod_member<int> _z(&z); 
00053 if (!v->visit(this, "z", &_z)) 
00054 return false;
00055 return true;
00056 }
00057 
00058 bool bar::accept(ph::common::object_visitor *v)
00059 { 
00060 if (!base::accept(v))
00061 return false;
00062 if (!v->visit(this))
00063 return false;
00064 return true;
00065 }
00066 
00067 bool bar::accept(ph::common::const_object_visitor *v) const
00068 { 
00069 if (!base::accept(v))
00070 return false;
00071 if (!v->visit(this))
00072 return false;
00073 return true;
00074 }

Generated on Wed Apr 5 22:03:21 2006 for cppxmlobj by doxygen 1.4.3

AltStyle によって変換されたページ (->オリジナル) /