MeVisLabToolboxReference
MeVis/Foundation/Sources/OSXSupport/macStartupItem.h
Go to the documentation of this file.
00001 // **InsertLicense** code author="Felix Ritter" version="2.0"
00002 
00006 
00007 #ifndef __macStartupItem_H
00008 #define __macStartupItem_H
00009 #if defined(__APPLE__)
00010 
00011 #include <string>
00012 #include <list>
00013 
00014 namespace macx {
00015   
00017   class StartupItem
00018   {
00019   public:
00020     
00022 
00028     enum ServiceType {
00029       ServiceTypeSystemDaemon = 0,        
00030       ServiceTypeAllUsersAgent,           
00031       ServiceTypeCurrentUserAgent,        
00032       
00033       ServiceTypeNumberOfTypes
00034     };
00035     
00036     static const std::string CurrentUser;
00037     
00039 
00041     static bool create(ServiceType type, const std::string &serviceId, const std::list<std::string> &arguments, const std::string &userName = std::string());
00042 
00044     static bool remove(ServiceType type, const std::string &serviceId);
00045 
00047 
00049     static bool load(ServiceType type, const std::string &serviceId);
00050     
00052 
00054     static bool unload(ServiceType type, const std::string &serviceId);
00055   };
00056 
00057 }
00058 
00059 #endif  // __APPLE__
00060 #endif  // __macStartupItem_H