LayOut C API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ruby_api.h
Go to the documentation of this file.
1 // Copyright 2020 Trimble Inc. All Rights Reserved.
2 
9 #ifndef SKETCHUP_APPLICATION_RUBY_API_H_
10 #define SKETCHUP_APPLICATION_RUBY_API_H_
11 
12 #include <SketchUpAPI/common.h>
13 #include <SketchUpAPI/model/defs.h>
14 #pragma pack(push, 8)
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
24 #ifdef __APPLE__
25  #define RUBY_VALUE unsigned long
26 #elif _WIN32
27  #define RUBY_VALUE unsigned long long
28 #else
29  #warning "Unsupported platform"
30  #define RUBY_VALUE unsigned long
31 #endif
32 
48 SU_RESULT SUEntityToRuby(SUEntityRef entity, RUBY_VALUE* ruby_entity);
49 
66 SU_RESULT SUEntityFromRuby(RUBY_VALUE ruby_entity, SUEntityRef* entity);
67 
86 SU_RESULT SUImageRepToRuby(SUImageRepRef imagerep, RUBY_VALUE* ruby_imagerep);
87 
111 SU_RESULT SUImageRepFromRuby(RUBY_VALUE ruby_imagerep, SUImageRepRef* imagerep);
112 
113 #ifdef __cplusplus
114 }
115 #endif
116 #pragma pack(pop)
117 
118 #endif // SKETCHUP_APPLICATION_RUBY_API_H_