// Copyright (c) 2005-2007 Andre Merzky (andre@merzky.net) // // Use, modification and distribution is subject to the Boost Software // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include #include /////////////////////////////////////////////////////////////////////////////// namespace saga { namespace impl { object::object(saga::object::type type) : type_(type) { } saga::object::type object::get_type() const { return type_; } saga::session object::get_session (void) const { SAGA_THROW("This object has no associated session", saga::NoSuccess); return get_the_session(); } saga::uuid object::get_uuid (void) const { return (uuid_); } void object::set_uuid(saga::uuid const& id) { uuid_ = id; } saga::object object::clone() const { SAGA_THROW( "This object does not implement the object::clone() function: " "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return saga::object(); } bool object::is_equal(saga::impl::object *impl) const { SAGA_THROW( "This object does not implement the object::is_equal() function: " "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return false; } void object::init() { SAGA_THROW( "This object does not implement the object::init() function: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); } /////////////////////////////////////////////////////////////////////////// saga::impl::attribute* object::get_attributes() { SAGA_THROW( "This object does not expose the SAGA attribute interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } saga::impl::attribute const* object::get_attributes() const { SAGA_THROW( "This object does not expose the SAGA attribute interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } /////////////////////////////////////////////////////////////////////////// saga::impl::monitorable* object::get_monitorable() { SAGA_THROW( "This object does not expose the SAGA monitorable interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } saga::impl::monitorable const* object::get_monitorable() const { SAGA_THROW( "This object does not expose the SAGA monitorable interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } /////////////////////////////////////////////////////////////////////////// saga::impl::steerable* object::get_steerable() { SAGA_THROW( "This object does not expose the SAGA steerable interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } saga::impl::steerable const* object::get_steerable() const { SAGA_THROW( "This object does not expose the SAGA steerable interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } /////////////////////////////////////////////////////////////////////////// saga::impl::task_interface* object::get_task_interface() { SAGA_THROW( "This object does not expose the SAGA task_interface interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } saga::impl::task_interface const* object::get_task_interface() const { SAGA_THROW( "This object does not expose the SAGA task_interface interface: " + "objecttype: " + boost::lexical_cast(type_), saga::NotImplemented); return NULL; } /////////////////////////////////////////////////////////////////////////////// }} // namespace saga::impl