Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

jdb_thread_names.h

Go to the documentation of this file.
00001 // AUTOMATICALLY GENERATED -- DO NOT EDIT!         -*- c++ -*-
00002 
00003 #ifndef jdb_thread_names_h
00004 #define jdb_thread_names_h
00005 
00006 #include "config.h"
00007 #include "l4_types.h"
00008 #include "initcalls.h"
00009 
00010 //
00011 // INTERFACE definition follows 
00012 //
00013 
00014 
00015 class Name_entry
00016 {
00017 public:
00018   enum
00019   {
00020     Size         = 19,
00021   };
00022 
00023 private:
00024   Global_id      _id;
00025   char           _name[Size];
00026 
00027 public:  
00028   inline bool is_invalid() const;
00029   
00030   inline void invalidate();
00031   
00032   inline Global_id id() const;
00033   
00034   inline const char * name() const;
00035   
00036   void set(Global_id id, const char *name);
00037 };
00038 
00039 class Jdb_thread_names
00040 {
00041 private:
00042   enum
00043   {
00044     Name_pages   = 2,
00045     Name_entries = (Name_pages<<Config::PAGE_SHIFT) / sizeof(Name_entry),
00046   };
00047 
00048   static Name_entry *_names;
00049 
00050 public:  
00051   static FIASCO_INIT void init();
00052   
00053   static void register_thread(Global_id id, const char *name);
00054   
00055   static Name_entry * lookup(Global_id id);
00056 };
00057 
00058 //
00059 // IMPLEMENTATION of inline functions (and needed classes)
00060 //
00061 
00062 
00063 
00064 
00065 inline const char *
00066 Name_entry::name() const
00067 { return this ? _name : ""; }
00068 
00069 #endif // jdb_thread_names_h

Generated on Mon Sep 26 14:20:11 2005 for Fiasco by  doxygen 1.4.2