aboutsummaryrefslogtreecommitdiff
path: root/Gem/manual/WriteCode.html
diff options
context:
space:
mode:
authorTravis CI <zmoelnig@travis-ci.umlaeute.mur.at>2015-03-14 20:32:26 +0000
committerTravis CI <zmoelnig@travis-ci.umlaeute.mur.at>2015-03-14 20:32:26 +0000
commitc6030846f5c1e34048774d60ca4c15e804bee839 (patch)
treefb75f89275a78ea383c0fd64e8fe5b3ae57cc898 /Gem/manual/WriteCode.html
Gem linux/amd64
built '' for linux/amd64
Diffstat (limited to 'Gem/manual/WriteCode.html')
-rw-r--r--Gem/manual/WriteCode.html41
1 files changed, 41 insertions, 0 deletions
diff --git a/Gem/manual/WriteCode.html b/Gem/manual/WriteCode.html
new file mode 100644
index 0000000..d4d0480
--- /dev/null
+++ b/Gem/manual/WriteCode.html
@@ -0,0 +1,41 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <meta name="Author" content="Mark Danks">
+ <meta name="Author" content="IOhannes m zmölnig">
+ <title>Writing new objects</title>
+</head>
+<body>
+
+<center>
+<h2>
+<u>Creating new GEM objects</u></h2></center>
+Look at the source code :-)&nbsp; GEM is written in C++, which means that
+you have to jump through some hopes to interact properly with Pd, which
+is written in C.&nbsp; If you look in Base/CPPExtern.h, you will see a
+collection of macros which you can use to help you create new objects.&nbsp;
+Use one of the GEM objects which is closest to what you want to do as a
+template.
+<p>One problem on SGI...you will need to
+<p>setenv LD_LIBRARY_PATH "/where/ever/pd/gem"
+<p>so that rld (the run-time linker) can find the GEM dso.&nbsp; Because
+you are linking with GEM, Pd isn't involved with the run time linking process;
+it is all done when Pd calls dlopen.
+<p>On NT, there is much the same problem...
+<p>set your PATH environment variable to \where\ever\pd\gem
+<p>or
+<p>make sure that your new .dll is located in the same directory where
+GEM is.
+<p>On NT, all of the classes and functions are exported through declexport/declimport.&nbsp;
+You shouldn't have to do anything to call the functions.&nbsp; I have not
+had any problems making other dll's which are loaded into Pd at runtime.&nbsp;
+You need to make certain that you are exporting the correct functions.&nbsp;
+If your dll cannot find the gem.dll, then it will silently fail.
+<p>And of course, e-mail IOhannes m zmölnig (<a href="mailto:zmoelnig@iem.at">zmoelnig@iem.at</a>) if you have any problems,
+questions, or solutions
+<p><img SRC="tribar.gif" height=13 width=561>
+<p><a href="index.html">[return]</a>
+<br>&nbsp;
+</body>
+</html>