aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xGem/Gem.pd_darwinbin4963468 -> 4963468 bytes
-rw-r--r--Gem/develop/include/Gem/Gem/State.h4
-rw-r--r--Gem/develop/include/Gem/Utils/any.h33
-rwxr-xr-xGem/gem_filmAVF.sobin55996 -> 55996 bytes
-rwxr-xr-xGem/gem_imageIO.sobin37584 -> 37584 bytes
-rwxr-xr-xGem/gem_imageJPEG.sobin49088 -> 49088 bytes
-rwxr-xr-xGem/gem_imageMAGICK.sobin50948 -> 50948 bytes
-rwxr-xr-xGem/gem_imageSGI.sobin56268 -> 56268 bytes
-rwxr-xr-xGem/gem_imageTIFF.sobin64124 -> 64124 bytes
-rwxr-xr-xGem/gem_modelOBJ.sobin97556 -> 97556 bytes
-rwxr-xr-xGem/gem_videoAVF.sobin61072 -> 61072 bytes
-rwxr-xr-xGem/gemcocoawindow.pd_darwinbin39108 -> 39108 bytes
-rwxr-xr-xGem/gemglutwindow.pd_darwinbin41844 -> 41844 bytes
-rwxr-xr-xGem/gemmacoswindow.pd_darwinbin38964 -> 38964 bytes
-rwxr-xr-xGem/pix_drum.pd_darwinbin25336 -> 25336 bytes
-rwxr-xr-xGem/pix_fiducialtrack.pd_darwinbin69040 -> 69040 bytes
-rwxr-xr-xGem/pix_hit.pd_darwinbin23356 -> 23356 bytes
-rwxr-xr-xGem/pix_mano.pd_darwinbin39584 -> 39584 bytes
18 files changed, 33 insertions, 4 deletions
diff --git a/Gem/Gem.pd_darwin b/Gem/Gem.pd_darwin
index 1c0779c..6151264 100755
--- a/Gem/Gem.pd_darwin
+++ b/Gem/Gem.pd_darwin
Binary files differ
diff --git a/Gem/develop/include/Gem/Gem/State.h b/Gem/develop/include/Gem/Gem/State.h
index b09ace4..173acf9 100644
--- a/Gem/develop/include/Gem/Gem/State.h
+++ b/Gem/develop/include/Gem/Gem/State.h
@@ -61,8 +61,8 @@ public:
typedef enum {
_ILLEGAL=-1,
_DIRTY, /* "dirty" */
- _TIMING_TICK, /* "timing.tick" */
- _PIX, /* "pix" */
+ _TIMING_TICK, /* "timing.tick" <float> */
+ _PIX, /* "pix", <*pixBuffer> */
_GL_STACKS, /* "stacks" */
_GL_DISPLAYLIST, /* */
_GL_LIGHTING, /* */
diff --git a/Gem/develop/include/Gem/Utils/any.h b/Gem/develop/include/Gem/Utils/any.h
index 5841c79..0861e19 100644
--- a/Gem/develop/include/Gem/Utils/any.h
+++ b/Gem/develop/include/Gem/Utils/any.h
@@ -27,6 +27,7 @@
#include <algorithm>
#include <string>
+//#define GEM_ANY_TYPEID_HACK
namespace gem
{
@@ -70,7 +71,7 @@ struct fxns {
struct type {
static const std::type_info& get_type(void)
{
-#if 0
+#if GEM_ANY_TYPEID_HACK
const std::type_info&res=typeid(T);
// the following is a dummy use of the type_info struct
// to make the template engine work properly on OSX/10.9
@@ -104,7 +105,7 @@ struct fxns<false> {
struct type {
static const std::type_info& get_type(void)
{
-#if 0
+#if GEM_ANY_TYPEID_HACK
const std::type_info&res=typeid(T);
return res;
#else
@@ -353,6 +354,34 @@ T const& any_cast(any const& this_)
{
return *any_cast<T>(const_cast<any*>(&this_));
}
+#ifdef GEM_INTERNAL
+// Note: The "unsafe" versions of any_cast are not part of the
+// public interface (and hence protected by GEM_INTERNAL) and may
+// be removed at any time. They are required where we know what type
+// is stored in the any and can't use typeid() comparison, e.g.,
+// when our types may travel across different shared libraries.
+template<typename T>
+T* unsafe_any_cast(any* this_)
+{
+ if (sizeof(T) <= sizeof(void*)) {
+ return reinterpret_cast<T*>(&this_->object);
+ } else {
+ return reinterpret_cast<T*>(this_->object);
+ }
+}
+
+template<typename T>
+T const* unsafe_any_cast(any const* this_)
+{
+ return unsafe_any_cast<T>(const_cast<any*>(this_));
+}
+
+template<typename T>
+T const& unsafe_any_cast(any const& this_)
+{
+ return *unsafe_any_cast<T>(const_cast<any*>(&this_));
+}
+#endif
}
#ifdef _MSC_VER
diff --git a/Gem/gem_filmAVF.so b/Gem/gem_filmAVF.so
index 1f19c8a..7c922fc 100755
--- a/Gem/gem_filmAVF.so
+++ b/Gem/gem_filmAVF.so
Binary files differ
diff --git a/Gem/gem_imageIO.so b/Gem/gem_imageIO.so
index 0ec5637..cb03553 100755
--- a/Gem/gem_imageIO.so
+++ b/Gem/gem_imageIO.so
Binary files differ
diff --git a/Gem/gem_imageJPEG.so b/Gem/gem_imageJPEG.so
index e788be2..87d6026 100755
--- a/Gem/gem_imageJPEG.so
+++ b/Gem/gem_imageJPEG.so
Binary files differ
diff --git a/Gem/gem_imageMAGICK.so b/Gem/gem_imageMAGICK.so
index 1b0c70f..00c784d 100755
--- a/Gem/gem_imageMAGICK.so
+++ b/Gem/gem_imageMAGICK.so
Binary files differ
diff --git a/Gem/gem_imageSGI.so b/Gem/gem_imageSGI.so
index 8534977..db22b37 100755
--- a/Gem/gem_imageSGI.so
+++ b/Gem/gem_imageSGI.so
Binary files differ
diff --git a/Gem/gem_imageTIFF.so b/Gem/gem_imageTIFF.so
index 3188a4c..c59fd7b 100755
--- a/Gem/gem_imageTIFF.so
+++ b/Gem/gem_imageTIFF.so
Binary files differ
diff --git a/Gem/gem_modelOBJ.so b/Gem/gem_modelOBJ.so
index b6319a2..885518d 100755
--- a/Gem/gem_modelOBJ.so
+++ b/Gem/gem_modelOBJ.so
Binary files differ
diff --git a/Gem/gem_videoAVF.so b/Gem/gem_videoAVF.so
index 46dedf3..5d9adcf 100755
--- a/Gem/gem_videoAVF.so
+++ b/Gem/gem_videoAVF.so
Binary files differ
diff --git a/Gem/gemcocoawindow.pd_darwin b/Gem/gemcocoawindow.pd_darwin
index b834044..18eff44 100755
--- a/Gem/gemcocoawindow.pd_darwin
+++ b/Gem/gemcocoawindow.pd_darwin
Binary files differ
diff --git a/Gem/gemglutwindow.pd_darwin b/Gem/gemglutwindow.pd_darwin
index 24b5fc7..b1f4230 100755
--- a/Gem/gemglutwindow.pd_darwin
+++ b/Gem/gemglutwindow.pd_darwin
Binary files differ
diff --git a/Gem/gemmacoswindow.pd_darwin b/Gem/gemmacoswindow.pd_darwin
index 03abd77..2c85475 100755
--- a/Gem/gemmacoswindow.pd_darwin
+++ b/Gem/gemmacoswindow.pd_darwin
Binary files differ
diff --git a/Gem/pix_drum.pd_darwin b/Gem/pix_drum.pd_darwin
index 1a1106f..1bc7892 100755
--- a/Gem/pix_drum.pd_darwin
+++ b/Gem/pix_drum.pd_darwin
Binary files differ
diff --git a/Gem/pix_fiducialtrack.pd_darwin b/Gem/pix_fiducialtrack.pd_darwin
index 35ac21e..b734625 100755
--- a/Gem/pix_fiducialtrack.pd_darwin
+++ b/Gem/pix_fiducialtrack.pd_darwin
Binary files differ
diff --git a/Gem/pix_hit.pd_darwin b/Gem/pix_hit.pd_darwin
index d3dde3d..d1f6439 100755
--- a/Gem/pix_hit.pd_darwin
+++ b/Gem/pix_hit.pd_darwin
Binary files differ
diff --git a/Gem/pix_mano.pd_darwin b/Gem/pix_mano.pd_darwin
index 029c241..8512cf1 100755
--- a/Gem/pix_mano.pd_darwin
+++ b/Gem/pix_mano.pd_darwin
Binary files differ