electron/shell/common/atom_command_line.h

39 lines
947 B
C
Raw Normal View History

// Copyright (c) 2015 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
2015-06-19 15:11:53 +00:00
#ifndef ATOM_COMMON_ATOM_COMMAND_LINE_H_
#define ATOM_COMMON_ATOM_COMMAND_LINE_H_
#include <string>
#include <vector>
#include "base/command_line.h"
2016-03-08 04:38:49 +00:00
#include "base/macros.h"
2016-03-09 13:19:56 +00:00
#include "build/build_config.h"
namespace atom {
2015-03-29 11:59:16 +00:00
// Singleton to remember the original "argc" and "argv".
class AtomCommandLine {
public:
static const base::CommandLine::StringVector& argv() { return argv_; }
static void Init(int argc, base::CommandLine::CharType** argv);
2016-06-02 10:49:36 +00:00
2015-06-19 14:56:10 +00:00
#if defined(OS_LINUX)
// On Linux the command line has to be read from base::CommandLine since
// it is using zygote.
static void InitializeFromCommandLine();
#endif
private:
static base::CommandLine::StringVector argv_;
2016-06-02 10:49:36 +00:00
2015-03-29 11:59:16 +00:00
DISALLOW_IMPLICIT_CONSTRUCTORS(AtomCommandLine);
};
} // namespace atom
2015-06-19 15:11:53 +00:00
#endif // ATOM_COMMON_ATOM_COMMAND_LINE_H_