[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48532] trunk/lib/darwin-9.x.universal: OCIO for OSX darwin9

jens verwiebe info at jensverwiebe.de
Tue Jul 3 15:06:51 CEST 2012


Revision: 48532
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48532
Author:   jensverwiebe
Date:     2012-07-03 13:06:45 +0000 (Tue, 03 Jul 2012)
Log Message:
-----------
OCIO for OSX darwin9

Added Paths:
-----------
    trunk/lib/darwin-9.x.universal/opencolorio/
    trunk/lib/darwin-9.x.universal/opencolorio/include/
    trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/
    trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorABI.h
    trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorIO.h
    trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorTransforms.h
    trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorTypes.h
    trunk/lib/darwin-9.x.universal/opencolorio/lib/

Added: trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorABI.h
===================================================================
--- trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorABI.h	                        (rev 0)
+++ trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorABI.h	2012-07-03 13:06:45 UTC (rev 48532)
@@ -0,0 +1,89 @@
+/*
+Copyright (c) 2003-2010 Sony Pictures Imageworks Inc., et al.
+All Rights Reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+* Redistributions of source code must retain the above copyright
+  notice, this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+  notice, this list of conditions and the following disclaimer in the
+  documentation and/or other materials provided with the distribution.
+* Neither the name of Sony Pictures Imageworks nor the names of its
+  contributors may be used to endorse or promote products derived from
+  this software without specific prior written permission.
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#ifndef INCLUDED_OCIO_OPENCOLORABI_H
+#define INCLUDED_OCIO_OPENCOLORABI_H
+
+// Makefile configuration options
+#define OCIO_NAMESPACE OpenColorIO
+#define OCIO_USE_BOOST_PTR 0
+#define OCIO_VERSION "1.0.7"
+#define OCIO_VERSION_NS v1
+
+/* Version as a single 4-byte hex number, e.g. 0x01050200 == 1.5.2
+   Use this for numeric comparisons, e.g. #if OCIO_VERSION_HEX >= ... 
+   Note: in the case where SOVERSION is overridden at compile-time,
+   this will reflect the original API version number.
+   */
+#define OCIO_VERSION_HEX ((1 << 24) | \
+                          (0 << 16) | \
+                          (7 <<  8))
+
+
+// Namespace / version mojo
+#define OCIO_NAMESPACE_ENTER namespace OCIO_NAMESPACE { namespace OCIO_VERSION_NS
+#define OCIO_NAMESPACE_EXIT using namespace OCIO_VERSION_NS; }
+#define OCIO_NAMESPACE_USING using namespace OCIO_NAMESPACE;
+
+// shared_ptr / dynamic_pointer_cast
+#if OCIO_USE_BOOST_PTR
+#include <boost/shared_ptr.hpp>
+#define OCIO_SHARED_PTR boost::shared_ptr
+#define OCIO_DYNAMIC_POINTER_CAST boost::dynamic_pointer_cast
+#elif __GNUC__ >= 4
+#include <tr1/memory>
+#define OCIO_SHARED_PTR std::tr1::shared_ptr
+#define OCIO_DYNAMIC_POINTER_CAST std::tr1::dynamic_pointer_cast
+#else
+#error OCIO needs gcc 4 or later to get access to <tr1/memory> (or specify USE_BOOST_PTR instead)
+#endif
+
+// If supported, define OCIOEXPORT, OCIOHIDDEN
+// (used to choose which symbols to export from OpenColorIO)
+#if defined __linux__ || __APPLE__
+    #if __GNUC__ >= 4
+        #define OCIOEXPORT __attribute__ ((visibility("default")))
+        #define OCIOHIDDEN __attribute__ ((visibility("hidden")))
+    #else
+        #define OCIOEXPORT
+        #define OCIOHIDDEN
+    #endif
+#elif defined(_WIN32) || defined(_WIN64) || defined(_WINDOWS) || defined(_MSC_VER)
+    // Windows requires you to export from the main library and then import in any others
+    #if defined OpenColorIO_EXPORTS
+        #define OCIOEXPORT __declspec(dllexport)
+    #else
+        #define OCIOEXPORT __declspec(dllimport)
+    #endif
+    #define OCIOHIDDEN
+#else // Others platforms not supported atm
+    #define OCIOEXPORT
+    #define OCIOHIDDEN
+#endif
+
+#endif // INCLUDED_OCIO_OPENCOLORABI_H

Added: trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorIO.h
===================================================================
--- trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorIO.h	                        (rev 0)
+++ trunk/lib/darwin-9.x.universal/opencolorio/include/OpenColorIO/OpenColorIO.h	2012-07-03 13:06:45 UTC (rev 48532)
@@ -0,0 +1,1230 @@
+/*
+Copyright (c) 2003-2010 Sony Pictures Imageworks Inc., et al.
+All Rights Reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+* Redistributions of source code must retain the above copyright
+  notice, this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+  notice, this list of conditions and the following disclaimer in the
+  documentation and/or other materials provided with the distribution.
+* Neither the name of Sony Pictures Imageworks nor the names of its
+  contributors may be used to endorse or promote products derived from
+  this software without specific prior written permission.
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+
+#ifndef INCLUDED_OCIO_OPENCOLORIO_H
+#define INCLUDED_OCIO_OPENCOLORIO_H
+
+#include <exception>
+#include <iosfwd>
+#include <string>
+#include <cstddef>
+
+#include "OpenColorABI.h"
+#include "OpenColorTypes.h"
+#include "OpenColorTransforms.h"
+
+/*!rst::
+C++ API
+=======
+
+**Usage Example:** *Compositing plugin that converts from "log" to "lin"*
+
+.. code-block:: cpp
+   
+   #include <OpenColorIO/OpenColorIO.h>
+   namespace OCIO = OCIO_NAMESPACE;
+   
+   try
+   {
+       // Get the global OpenColorIO config
+       // This will auto-initialize (using $OCIO) on first use
+       OCIO::ConstConfigRcPtr config = OCIO::GetCurrentConfig();
+       
+       // Get the processor corresponding to this transform.
+       OCIO::ConstProcessorRcPtr processor = config->getProcessor(OCIO::ROLE_COMPOSITING_LOG,
+                                                                  OCIO::ROLE_SCENE_LINEAR);
+    
+       // Wrap the image in a light-weight ImageDescription
+       OCIO::PackedImageDesc img(imageData, w, h, 4);
+       
+       // Apply the color transformation (in place)
+       processor->apply(img);
+   }
+   catch(OCIO::Exception & exception)
+   {
+       std::cerr << "OpenColorIO Error: " << exception.what() << std::endl;
+   }
+
+*/
+
+OCIO_NAMESPACE_ENTER
+{
+    ///////////////////////////////////////////////////////////////////////////
+    //!rst::
+    // Exceptions
+    // **********
+    
+    //!cpp:class:: An exception class to throw for errors detected at
+    // runtime.
+    //
+    // .. warning:: 
+    //    All functions in the Config class can potentially throw this exception.
+    class OCIOEXPORT Exception : public std::exception
+    {
+    public:
+        //!cpp:function:: Constructor that takes a string as the exception message.
+        Exception(const char *) throw();
+        //!cpp:function:: Constructor that takes an exception pointer.
+        Exception(const Exception&) throw();
+        //!cpp:function:: Constructor that takes an exception pointer and returns an exception pointer (???).
+        Exception& operator=(const Exception&) throw();
+        //!cpp:function::
+        virtual ~Exception() throw();
+        //!cpp:function::
+        virtual const char* what() const throw();
+        
+    private:
+        std::string msg_;
+    };
+    
+    //!cpp:class:: An exception class for errors detected at
+    // runtime, thrown when OCIO cannot find a file that is expected to
+    // exist. This is provided as a custom type to
+    // distinguish cases where one wants to continue looking for
+    // missing files, but wants to properly fail
+    // for other error conditions.
+    
+    class OCIOEXPORT ExceptionMissingFile : public Exception
+    {
+    public:
+        //!cpp:function::
+        ExceptionMissingFile(const char *) throw();
+        //!cpp:function::
+        ExceptionMissingFile(const ExceptionMissingFile&) throw();
+    };
+    
+    ///////////////////////////////////////////////////////////////////////////
+    //!rst::
+    // Global
+    // ******
+    
+    //!cpp:function::
+    // OpenColorIO, during normal usage, tends to cache certain information
+    // (such as the contents of LUTs on disk, intermediate results, etc.).
+    // Calling this function will flush all such information.
+    // Under normal usage, this is not necessary, but it can be helpful in particular instances,
+    // such as designing OCIO profiles, and wanting to re-read luts without
+    // restarting.
+    
+    extern OCIOEXPORT void ClearAllCaches();
+    
+    //!cpp:function:: Get the version number for the library, as a
+    // dot-delimited string (e.g., "1.0.0"). This is also available
+    // at compile time as OCIO_VERSION.
+    
+    extern OCIOEXPORT const char * GetVersion();
+    
+    //!cpp:function:: Get the version number for the library, as a
+    // single 4-byte hex number (e.g., 0x01050200 for "1.5.2"), to be used
+    // for numeric comparisons. This is also available
+    // at compile time as OCIO_VERSION_HEX.
+    
+    extern OCIOEXPORT int GetVersionHex();
+    
+    //!cpp:function:: Get the global logging level.
+    // You can override this at runtime using the :envvar:`OCIO_LOGGING_LEVEL`
+    // environment variable. The client application that sets this should use

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list