]> git.saurik.com Git - apple/configd.git/blob - SystemConfiguration.fproj/SCDPlugin.h
e0cf53151162dd6f8b78f42b69c3249d62f09ab4
[apple/configd.git] / SystemConfiguration.fproj / SCDPlugin.h
1 /*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22
23 #ifndef _SCDPLUGIN_H
24 #define _SCDPLUGIN_H
25
26 #include <sys/cdefs.h>
27 #include <CoreFoundation/CoreFoundation.h>
28
29
30 /*!
31 @header SCDPlugin
32 */
33
34
35 /*
36 @define kSCBundleRequires
37 */
38 #define kSCBundleRequires CFSTR("Requires")
39
40
41 /*
42 @define kSCBundleVerbose
43 */
44 #define kSCBundleVerbose CFSTR("Verbose")
45
46
47 /*!
48 @typedef SCDynamicStoreBundleLoadFunction
49 @discussion Type of the load() initialization function that will be
50 called when a plug-in is loaded. This function is called
51 before calling the start() function and can be uesd to
52 initialize any variables, open any sessions with "configd",
53 and register any needed notifications.
54 @param bundle The CFBundle being loaded.
55 @param verbose A boolean value indicating whether verbose logging has
56 been enabled for this bundle.
57 */
58 typedef void (*SCDynamicStoreBundleLoadFunction) (CFBundleRef bundle,
59 Boolean bundleVerbose);
60
61 /*!
62 @typedef SCDynamicStoreBundleStartFunction
63 @discussion Type of the start() initialization function that will be
64 called after all plug-ins have been loaded and their load()
65 functions have been called. This function can initialize
66 variables, open sessions with "configd", and register any
67 needed notifications.
68 @param bundleName The name of the plug-in / bundle.
69 @param bundlePath The path name associated with the plug-in / bundle.
70 */
71 typedef void (*SCDynamicStoreBundleStartFunction) (const char *bundleName,
72 const char *bundlePath);
73
74 /*!
75 @typedef SCDynamicStoreBundlePrimeFunction
76 @discussion Type of the prime() initialization function that will be
77 called after all plug-ins have executed their start() function but
78 before the main plug-in run loop is started. This function should
79 be used to initialize any configuration information and/or state
80 in the store.
81 */
82 typedef void (*SCDynamicStoreBundlePrimeFunction) ();
83
84
85 __BEGIN_DECLS
86
87 __END_DECLS
88
89 #endif /* _SCDPLUGIN_H */