diff options
author | Thomas Winget <tewinget@gmail.com> | 2015-03-25 05:56:36 -0400 |
---|---|---|
committer | Thomas Winget <tewinget@gmail.com> | 2015-03-25 05:56:36 -0400 |
commit | 5c0bc0050ccfd579ed75be384e928e0165d6b2ce (patch) | |
tree | 7bce2200f19b05448cb719b54037a7c2c82d6bab /src/daemonizer/daemonizer.h | |
parent | Merges #36 (diff) | |
parent | Merge pull request #243 (diff) | |
download | monero-5c0bc0050ccfd579ed75be384e928e0165d6b2ce.tar.xz |
Merge upstream updates into blockchain branch
Diffstat (limited to 'src/daemonizer/daemonizer.h')
-rw-r--r-- | src/daemonizer/daemonizer.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/daemonizer/daemonizer.h b/src/daemonizer/daemonizer.h new file mode 100644 index 000000000..6097a58f6 --- /dev/null +++ b/src/daemonizer/daemonizer.h @@ -0,0 +1,38 @@ +#pragma once + +#include <boost/filesystem/path.hpp> +#include <boost/program_options/options_description.hpp> +#include <boost/program_options/variables_map.hpp> + +namespace daemonizer +{ + void init_options( + boost::program_options::options_description & hidden_options + , boost::program_options::options_description & normal_options + ); + + boost::filesystem::path get_default_data_dir(); + + boost::filesystem::path get_relative_path_base( + boost::program_options::variables_map const & vm + ); + + /** + * @arg create_before_detach - this indicates that the daemon should be + * created before the fork, giving it a chance to report initialization + * errors. At the time of this writing, this is not possible in the primary + * daemon (likely due to the size of the blockchain in memory). + */ + template <typename T_executor> + bool daemonize( + int argc, char const * argv[] + , T_executor && executor // universal ref + , boost::program_options::variables_map const & vm + ); +} + +#ifdef WIN32 +# include "daemonizer/windows_daemonizer.inl" +#else +# include "daemonizer/posix_daemonizer.inl" +#endif |