Line 1... |
Line 1... |
// $Id: RtclProxyOwned.hpp 365 2011-02-28 07:28:26Z mueller $
|
// $Id: RtclProxyOwned.hpp 490 2013-02-22 18:43:26Z mueller $
|
//
|
//
|
// Copyright 2011- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
// Copyright 2011-2013 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
//
|
//
|
// This program is free software; you may redistribute and/or modify it under
|
// This program is free software; you may redistribute and/or modify it under
|
// the terms of the GNU General Public License as published by the Free
|
// the terms of the GNU General Public License as published by the Free
|
// Software Foundation, either version 2, or at your option any later version.
|
// Software Foundation, either version 2, or at your option any later version.
|
//
|
//
|
Line 11... |
Line 11... |
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
// for complete details.
|
// for complete details.
|
//
|
//
|
// Revision History:
|
// Revision History:
|
// Date Rev Version Comment
|
// Date Rev Version Comment
|
|
// 2013-02-05 482 1.1 use shared_ptr to TO*; add ObjPtr();
|
// 2011-02-13 361 1.0 Initial version
|
// 2011-02-13 361 1.0 Initial version
|
// 2011-02-11 360 0.1 First draft
|
// 2011-02-11 360 0.1 First draft
|
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
|
|
/*!
|
/*!
|
\file
|
\file
|
\version $Id: RtclProxyOwned.hpp 365 2011-02-28 07:28:26Z mueller $
|
\version $Id: RtclProxyOwned.hpp 490 2013-02-22 18:43:26Z mueller $
|
\brief Declaration of class RtclProxyOwned.
|
\brief Declaration of class RtclProxyOwned.
|
*/
|
*/
|
|
|
#ifndef included_Retro_RtclProxyOwned
|
#ifndef included_Retro_RtclProxyOwned
|
#define included_Retro_RtclProxyOwned 1
|
#define included_Retro_RtclProxyOwned 1
|
|
|
|
#include "boost/shared_ptr.hpp"
|
|
|
#include "RtclProxyBase.hpp"
|
#include "RtclProxyBase.hpp"
|
|
|
namespace Retro {
|
namespace Retro {
|
|
|
template <class TO>
|
template <class TO>
|
Line 38... |
Line 41... |
RtclProxyOwned(const std::string& type, Tcl_Interp* interp,
|
RtclProxyOwned(const std::string& type, Tcl_Interp* interp,
|
const char* name, TO* pobj=0);
|
const char* name, TO* pobj=0);
|
~RtclProxyOwned();
|
~RtclProxyOwned();
|
|
|
TO& Obj();
|
TO& Obj();
|
|
const boost::shared_ptr<TO>& ObjSPtr();
|
|
|
protected:
|
protected:
|
void SetObj(TO* pobj);
|
boost::shared_ptr<TO> fspObj; //!< sptr to managed object
|
|
|
protected:
|
|
TO* fpObj; //!< ptr to managed object
|
|
|
|
|
|
};
|
};
|
|
|
} // end namespace Retro
|
} // end namespace Retro
|
|
|