SAGA C++ API 1.6
job_self.hpp
Go to the documentation of this file.
00001 #ifndef SAGA_PACKAGES_JOB_JOB_SELF_HPP
00002 #define SAGA_PACKAGES_JOB_JOB_SELF_HPP
00003 
00004 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00005 #pragma wave option(preserve: 2, line: 1, output: "preprocessed/job_self.hpp")
00006 #endif
00007 //  Copyright (c) 2005-2009 Hartmut Kaiser
00008 //  Copyright (c) 2007 Ole Weidner (oweidner@cct.lsu.edu)
00009 // 
00010 //  Distributed under the Boost Software License, Version 1.0. (See accompanying 
00011 //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
00012 
00013 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00014 #pragma wave option(output: null)
00015 #endif
00016 #include <string>
00017 #include <vector>
00018 
00019 // include dependent spec sections
00020 #include <saga/saga/util.hpp>
00021 #include <saga/saga/base.hpp>
00022 #include <saga/saga/types.hpp>
00023 #include <saga/saga/session.hpp>
00024 #include <saga/saga/call.hpp>
00025 
00026 #include <saga/saga/packages/job/config.hpp>
00027 #include <saga/saga/packages/job/job.hpp>
00028 #include <saga/saga/detail/steerable.hpp>
00029 
00030 // suppress warnings about dependent classes not being exported from the dll
00031 #if defined(BOOST_MSVC)
00032 #pragma warning(push)
00033 #pragma warning(disable: 4251 4231 4275 4660)
00034 #endif
00035 
00036 #ifdef SAGA_DEBUG
00037 #include <saga/saga/packages/job/preprocessed/job_self.hpp>
00038 #else
00039 
00040 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00041 #pragma wave option(preserve: 2, line: 1, output: "preprocessed/job_self.hpp")
00042 #endif
00043 
00044 namespace saga
00045 {
00046     namespace job {
00047     
00059     class SAGA_JOB_PACKAGE_EXPORT self 
00060         : public saga::job::job,
00061           public saga::detail::steerable<self>
00062     {
00064 
00065         friend struct saga::detail::steerable <self>;   
00067         
00068     protected:
00070 
00071         explicit self(saga::impl::job* impl);
00073           
00074     public:
00079         self (void);
00080           
00085         ~self (void);
00086     }; 
00087     
00088     }   // namespace job
00089 } 
00090  
00092 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00093 #pragma wave option(output: null)
00094 #endif
00095 
00096 #endif // !defined(SAGA_DEBUG)
00097 
00098 // re-enable warnings about dependent classes not being exported from the dll
00099 #if defined(BOOST_MSVC)
00100 #pragma warning(pop)
00101 #endif
00102 
00103 #endif // !defined(SAGA_PACKAGES_JOB_JOB_SELF_HPP)
00104 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines