SAGA C++ API 1.6
permissions.cpp
Go to the documentation of this file.
00001 //  Copyright (c) 2005-2009 Hartmut Kaiser
00002 // 
00003 //  Distributed under the Boost Software License, Version 1.0. (See accompanying 
00004 //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
00005 
00006 #include <saga/saga/util.hpp>
00007 #include <saga/saga/exception.hpp>
00008 #include <saga/saga/object.hpp>
00009 #include <saga/saga/task.hpp>
00010 #include <saga/saga/permissions.hpp>
00011 #include <saga/saga/context.hpp>
00012 
00013 #include <saga/impl/exception.hpp>
00014 #include <saga/impl/engine/object.hpp>
00015 #include <saga/impl/engine/permissions.hpp> 
00016 #include <saga/impl/engine/context_base.hpp>
00017 
00018 #include <saga/saga/detail/permissions_impl.hpp>
00019 
00021 namespace saga 
00022 {
00023     permissions::permissions (saga::object rhs)
00024       : impl_ (rhs.get_impl_sp())
00025     {
00026     }
00027 
00028     permissions::permissions (saga::impl::object *impl)
00029       : impl_ (impl->shared_from_this())
00030     {
00031     }
00032 
00033     permissions::~permissions (void)
00034     {
00035     }
00036 
00037     namespace detail
00038     {
00040         //  implement the permissions functions (we need to explicitly specialize 
00041         //  the template because the functions are not implemented inline)
00042         template struct SAGA_EXPORT_REPEAT permissions<saga::permissions>;
00043 
00044         template struct SAGA_EXPORT permissions_priv<saga::permissions, saga::task_base::Sync>;
00045         template struct SAGA_EXPORT permissions_priv<saga::permissions, saga::task_base::Async>;
00046         template struct SAGA_EXPORT permissions_priv<saga::permissions, saga::task_base::Task>;
00047     }
00048 
00050 } // namespace saga
00051 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines