diff options
Diffstat (limited to 'features/org.eclipse.equinox.executable.feature/library/eclipseConfig.h')
-rw-r--r-- | features/org.eclipse.equinox.executable.feature/library/eclipseConfig.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/features/org.eclipse.equinox.executable.feature/library/eclipseConfig.h b/features/org.eclipse.equinox.executable.feature/library/eclipseConfig.h new file mode 100644 index 000000000..cd8ef9c97 --- /dev/null +++ b/features/org.eclipse.equinox.executable.feature/library/eclipseConfig.h @@ -0,0 +1,62 @@ +/******************************************************************************* + * Copyright (c) 2000, 2010 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ + +#ifndef ECLIPSE_CONFIG_H +#define ECLIPSE_CONFIG_H + +/* Configuration file reading utilities */ + +/** + * Reads a configuration file for the corresponding + * program argument. + * e.g if the program argument contains "c:/folder/eclipse.exe" + * then the config file "c:/folder/eclipse.ini" will be parsed. + * On a Unix like platform, for a program argument "/usr/eclipse/eclipse" + * should correspond a configuration file "/usr/eclipse/eclipse.ini" + * + * This method will call readConfigFile to read the actual ini file + * + * This method will use getIniFile with a value for consoleLauncher that + * is determined at compile time. Clients who are not the actual + * win32 console executable should instead use getIniFile and readConfigFile. + * + * Returns 0 if success. + */ +extern int readIniFile(_TCHAR* program, int *argc, _TCHAR ***argv); + +/** + * Return the path to the launcher ini file for the corresponding program + * argument. On win32, an "eclipsec.exe' console launcher can use the "eclipse.ini" + * ini file. + * consoleLauncher : whether or not we are using the win32 "eclipsec" console launcher + * has no affect on other platforms + */ +extern _TCHAR* getIniFile(_TCHAR* program, int consoleLauncher); + +/** + * Reads the given configuration file + * The argument argv refers to a newly allocated array of strings. + * The first entry is the program name to mimic the expectations + * from a typical argv list. + * The last entry of that array is NULL. + * Each non NULL entry in that array must be freed by the caller + * as well as the array itself, using freeConfig(). + * The argument argc contains the number of string allocated. + * + * Returns 0 if success. + */ +extern int readConfigFile( _TCHAR * config_file, int *argc, _TCHAR ***argv ); +/** + * Free the memory allocated by readConfigFile(). + */ +extern void freeConfig(_TCHAR **args); + +#endif /* ECLIPSE_CONFIG_H */ |