2 * Copyright 2014, Rene Gollent, rene@gollent.com.
3 * Distributed under the terms of the MIT License.
5 #ifndef IMAGE_DEBUG_LOADING_STATE_HANDLER_ROSTER_H
6 #define IMAGE_DEBUG_LOADING_STATE_HANDLER_ROSTER_H
10 #include <ObjectList.h>
13 class ImageDebugLoadingStateHandler
;
14 class SpecificImageDebugInfoLoadingState
;
17 typedef BObjectList
<ImageDebugLoadingStateHandler
> LoadingStateHandlerList
;
20 class ImageDebugLoadingStateHandlerRoster
{
22 ImageDebugLoadingStateHandlerRoster();
23 ~ImageDebugLoadingStateHandlerRoster();
25 static ImageDebugLoadingStateHandlerRoster
*
27 static status_t
CreateDefault();
28 static void DeleteDefault();
31 status_t
RegisterDefaultHandlers();
33 status_t
FindStateHandler(
34 SpecificImageDebugInfoLoadingState
* state
,
35 ImageDebugLoadingStateHandler
*&
37 // returns a reference
40 ImageDebugLoadingStateHandler
*
42 void UnregisterHandler(
43 ImageDebugLoadingStateHandler
*
48 LoadingStateHandlerList
50 static ImageDebugLoadingStateHandlerRoster
*
55 #endif // IMAGE_DEBUG_LOADING_STATE_HANDLER_ROSTER_H