1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef MOJO_PUBLIC_C_SYSTEM_MAIN_H_ 6 #define MOJO_PUBLIC_C_SYSTEM_MAIN_H_ 7 8 #include "mojo/public/c/system/types.h" 9 10 // Implement MojoMain directly as the entry point for an application. 11 // 12 // MojoResult MojoMain(MojoHandle application_request) { 13 // ... 14 // } 15 // 16 // TODO(davemoore): Establish this as part of our SDK for third party mojo 17 // application writers. 18 19 #if defined(__cplusplus) 20 extern "C" { 21 #endif 22 23 #if defined(WIN32) 24 __declspec(dllexport) MojoResult 25 __cdecl MojoMain(MojoHandle application_request); 26 #else // !defined(WIN32) 27 __attribute__((visibility("default"))) MojoResult 28 MojoMain(MojoHandle service_provider_handle); 29 #endif // defined(WIN32) 30 31 #ifdef __cplusplus 32 } // extern "C" 33 #endif 34 35 #endif // MOJO_PUBLIC_C_SYSTEM_MAIN_H_ 36