1 // -*- Mode: C++; c-file-style: "stroustrup"; indent-tabs-mode:nil; -*- 2 #ifndef BSP_H_ 3 # define BSP_H_ 4 5 #include <string> 6 #include <boost/shared_ptr.hpp> 7 8 9 class Foo 10 { 11 std::string m_datum; 12 public: 13 Foo()14 Foo () : m_datum ("") {} 15 Foo(std::string const & datum)16 Foo (std::string const &datum) : m_datum (datum) {} 17 get_datum()18 const std::string get_datum () const { return m_datum; } 19 set_datum(std::string const & datum)20 void set_datum (std::string const &datum) { m_datum = datum; } 21 ~Foo()22 virtual ~Foo() {} 23 24 }; 25 26 void function_that_takes_foo (boost::shared_ptr<Foo> foo); 27 boost::shared_ptr<Foo> function_that_returns_foo (); 28 29 #endif /* !FOO_H_ */ 30