X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/1059e1cc0c2ecfa237406949aa26155b6a5b9154..66f23d4fabf89ad09adbd4dfc15ac6b5b2b7da83:/interpretor/preprocessor/faust-0.9.47mr3/architecture/osclib/oscpack/osc/OscTypes.h diff --git a/interpretor/preprocessor/faust-0.9.47mr3/architecture/osclib/oscpack/osc/OscTypes.h b/interpretor/preprocessor/faust-0.9.47mr3/architecture/osclib/oscpack/osc/OscTypes.h deleted file mode 100644 index d012e43..0000000 --- a/interpretor/preprocessor/faust-0.9.47mr3/architecture/osclib/oscpack/osc/OscTypes.h +++ /dev/null @@ -1,178 +0,0 @@ -/* - oscpack -- Open Sound Control packet manipulation library - http://www.audiomulch.com/~rossb/oscpack - - Copyright (c) 2004-2005 Ross Bencina - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - Any person wishing to distribute modifications to the Software is - requested to send the modifications to the original developer so that - they can be incorporated into the canonical version. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR - ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -*/ -#ifndef INCLUDED_OSCTYPES_H -#define INCLUDED_OSCTYPES_H - - -namespace osc{ - -// basic types - -#if defined(__BORLANDC__) || defined(_MSC_VER) - -typedef __int64 int64; -typedef unsigned __int64 uint64; - -#else - -typedef long long int64; -typedef unsigned long long uint64; - -#endif - - - -#ifdef x86_64 - -typedef signed int int32; -typedef unsigned int uint32; - -#else - -typedef signed long int32; -typedef unsigned long uint32; - -#endif - - - -enum TypeTagValues { - TRUE_TYPE_TAG = 'T', - FALSE_TYPE_TAG = 'F', - NIL_TYPE_TAG = 'N', - INFINITUM_TYPE_TAG = 'I', - INT32_TYPE_TAG = 'i', - FLOAT_TYPE_TAG = 'f', - CHAR_TYPE_TAG = 'c', - RGBA_COLOR_TYPE_TAG = 'r', - MIDI_MESSAGE_TYPE_TAG = 'm', - INT64_TYPE_TAG = 'h', - TIME_TAG_TYPE_TAG = 't', - DOUBLE_TYPE_TAG = 'd', - STRING_TYPE_TAG = 's', - SYMBOL_TYPE_TAG = 'S', - BLOB_TYPE_TAG = 'b' -}; - - - -// i/o manipulators used for streaming interfaces - -struct BundleInitiator{ - explicit BundleInitiator( uint64 timeTag_ ) : timeTag( timeTag_ ) {} - uint64 timeTag; -}; - -extern BundleInitiator BeginBundleImmediate; - -inline BundleInitiator BeginBundle( uint64 timeTag=1 ) -{ - return BundleInitiator(timeTag); -} - - -struct BundleTerminator{ -}; - -extern BundleTerminator EndBundle; - -struct BeginMessage{ - explicit BeginMessage( const char *addressPattern_ ) : addressPattern( addressPattern_ ) {} - const char *addressPattern; -}; - -struct MessageTerminator{ -}; - -extern MessageTerminator EndMessage; - - -// osc specific types. they are defined as structs so they can be used -// as separately identifiable types with the streaming operators. - -struct NilType{ -}; - -extern NilType Nil; - - -struct InfinitumType{ -}; - -extern InfinitumType Infinitum; - -struct RgbaColor{ - RgbaColor() {} - explicit RgbaColor( uint32 value_ ) : value( value_ ) {} - uint32 value; - - operator uint32() const { return value; } -}; - - -struct MidiMessage{ - MidiMessage() {} - explicit MidiMessage( uint32 value_ ) : value( value_ ) {} - uint32 value; - - operator uint32() const { return value; } -}; - - -struct TimeTag{ - TimeTag() {} - explicit TimeTag( uint64 value_ ) : value( value_ ) {} - uint64 value; - - operator uint64() const { return value; } -}; - - -struct Symbol{ - Symbol() {} - explicit Symbol( const char* value_ ) : value( value_ ) {} - const char* value; - - operator const char *() const { return value; } -}; - - -struct Blob{ - Blob() {} - explicit Blob( const void* data_, unsigned long size_ ) - : data( data_ ), size( size_ ) {} - const void* data; - unsigned long size; -}; - -} // namespace osc - - -#endif /* INCLUDED_OSCTYPES_H */