git-svn-id: svn://scm.gforge.inria.fr/svn/openvibe@954 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f

--- cmake-modules/ovp_global_defines.h
+++ cmake-modules/ovp_global_defines.h
@@ -5,236 +5,236 @@
 // Streamed matrix stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamEncoder                                                                    (0x5cb32c71, 0x576f00a6)
-#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamEncoderDesc                                                                (0xeeefe060, 0x646ee8ab)
-#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputParameterId_Matrix                                                    (0xa3e9e5b0, 0xae756303)
-#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                      (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeBuffer                                                (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeEnd                                                   (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeHeader                                                (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamEncoder                                                                    OpenViBE::CIdentifier(0x5cb32c71, 0x576f00a6)
+#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamEncoderDesc                                                                OpenViBE::CIdentifier(0xeeefe060, 0x646ee8ab)
+#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputParameterId_Matrix                                                    OpenViBE::CIdentifier(0xa3e9e5b0, 0xae756303)
+#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                      OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeBuffer                                                OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeEnd                                                   OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_StreamedMatrixStreamEncoder_InputTriggerId_EncodeHeader                                                OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Stimulation stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_StimulationStreamEncoder                                                                       (0x6e86f7d5, 0xa4668108)
-#define OVP_GD_ClassId_Algorithm_StimulationStreamEncoderDesc                                                                   (0x9b994b50, 0x52c3f06a)
-#define OVP_GD_Algorithm_StimulationStreamEncoder_InputParameterId_SimtulationSet                                               (0x8565254c, 0x3a49268e)
-#define OVP_GD_Algorithm_StimulationStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                         (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeBuffer                                                   (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeEnd                                                      (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeHeader                                                   (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_StimulationStreamEncoder                                                                       OpenViBE::CIdentifier(0x6e86f7d5, 0xa4668108)
+#define OVP_GD_ClassId_Algorithm_StimulationStreamEncoderDesc                                                                   OpenViBE::CIdentifier(0x9b994b50, 0x52c3f06a)
+#define OVP_GD_Algorithm_StimulationStreamEncoder_InputParameterId_SimtulationSet                                               OpenViBE::CIdentifier(0x8565254c, 0x3a49268e)
+#define OVP_GD_Algorithm_StimulationStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                         OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeBuffer                                                   OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeEnd                                                      OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_StimulationStreamEncoder_InputTriggerId_EncodeHeader                                                   OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Spectrum stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_SpectrumStreamEncoder                                                                          (0xb3e252db, 0xc3214498)
-#define OVP_GD_ClassId_Algorithm_SpectrumStreamEncoderDesc                                                                      (0xd6182973, 0x122ce114)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputParameterId_Matrix                                                          (0xa3e9e5b0, 0xae756303)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputParameterId_MinMaxFrenquencyBands                                           (0xf5251300, 0x72520e28)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                            (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeBuffer                                                      (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeEnd                                                         (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeHeader                                                      (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_SpectrumStreamEncoder                                                                          OpenViBE::CIdentifier(0xb3e252db, 0xc3214498)
+#define OVP_GD_ClassId_Algorithm_SpectrumStreamEncoderDesc                                                                      OpenViBE::CIdentifier(0xd6182973, 0x122ce114)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputParameterId_Matrix                                                          OpenViBE::CIdentifier(0xa3e9e5b0, 0xae756303)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputParameterId_MinMaxFrenquencyBands                                           OpenViBE::CIdentifier(0xf5251300, 0x72520e28)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                            OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeBuffer                                                      OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeEnd                                                         OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_SpectrumStreamEncoder_InputTriggerId_EncodeHeader                                                      OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Signal stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_SignalStreamEncoder                                                                            (0xc488ad3c, 0xeb2e36bf)
-#define OVP_GD_ClassId_Algorithm_SignalStreamEncoderDesc                                                                        (0x90ac1e0f, 0x01518200)
-#define OVP_GD_Algorithm_SignalStreamEncoder_InputParameterId_SamplingRate                                                      (0x998710ff, 0x2c5cca82)
-#define OVP_GD_Algorithm_SignalStreamEncoder_InputParameterId_Matrix                                                            (0xa3e9e5b0, 0xae756303)
-#define OVP_GD_Algorithm_SignalStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                              (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeBuffer                                                        (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeEnd                                                           (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeHeader                                                        (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_SignalStreamEncoder                                                                            OpenViBE::CIdentifier(0xc488ad3c, 0xeb2e36bf)
+#define OVP_GD_ClassId_Algorithm_SignalStreamEncoderDesc                                                                        OpenViBE::CIdentifier(0x90ac1e0f, 0x01518200)
+#define OVP_GD_Algorithm_SignalStreamEncoder_InputParameterId_SamplingRate                                                      OpenViBE::CIdentifier(0x998710ff, 0x2c5cca82)
+#define OVP_GD_Algorithm_SignalStreamEncoder_InputParameterId_Matrix                                                            OpenViBE::CIdentifier(0xa3e9e5b0, 0xae756303)
+#define OVP_GD_Algorithm_SignalStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                              OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeBuffer                                                        OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeEnd                                                           OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_SignalStreamEncoder_InputTriggerId_EncodeHeader                                                        OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Feature vector stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamEncoder                                                                     (0x7ebe049d, 0xf777a602)
-#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamEncoderDesc                                                                 (0xc249527b, 0x89ee1996)
-#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputParameterId_Matrix                                                     (0xa3e9e5b0, 0xae756303)
-#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                       (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeBuffer                                                 (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeEnd                                                    (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeHeader                                                 (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamEncoder                                                                     OpenViBE::CIdentifier(0x7ebe049d, 0xf777a602)
+#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamEncoderDesc                                                                 OpenViBE::CIdentifier(0xc249527b, 0x89ee1996)
+#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputParameterId_Matrix                                                     OpenViBE::CIdentifier(0xa3e9e5b0, 0xae756303)
+#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_OutputParameterId_EncodedMemoryBuffer                                       OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeBuffer                                                 OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeEnd                                                    OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_FeatureVectorStreamEncoder_InputTriggerId_EncodeHeader                                                 OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Experiment information stream encoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamEncoder                                                             (0x56b354fe, 0xbf175468)
-#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamEncoderDesc                                                         (0x8cc2c754, 0x61665fda)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectName                                        (0x3d3826ea, 0xe8883815)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_ExperimentIdentifier                               (0x40259641, 0x478c73de)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_LaboratoryName                                     (0x5ca80fa5, 0x774f01cb)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectGender                                      (0x7d5059e8, 0xe4d8b38d)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectIdentifier                                  (0x97c5d20d, 0x203e65b3)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_TechnicianName                                     (0xb8a94b68, 0x389393d9)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_ExperimentDate                                     (0xbc0266a2, 0x9c2935f1)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectAge                                         (0xc36c6b08, 0x5227380a)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_TechnicianIdentifier                               (0xc8ecfbbc, 0x0dcda310)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_LaboratoryIdentifier                               (0xe761d3d4, 0x44ba1ebf)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_OutputParameterId_EncodedMemoryBuffer                               (0xa3d8b171, 0xf8734734)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeBuffer                                         (0x1b7076fd, 0x449bc70a)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeEnd                                            (0x3fc23508, 0x806753d8)
-#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeHeader                                         (0x878eaf60, 0xf9d5303f)
+#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamEncoder                                                             OpenViBE::CIdentifier(0x56b354fe, 0xbf175468)
+#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamEncoderDesc                                                         OpenViBE::CIdentifier(0x8cc2c754, 0x61665fda)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectName                                        OpenViBE::CIdentifier(0x3d3826ea, 0xe8883815)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_ExperimentIdentifier                               OpenViBE::CIdentifier(0x40259641, 0x478c73de)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_LaboratoryName                                     OpenViBE::CIdentifier(0x5ca80fa5, 0x774f01cb)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectGender                                      OpenViBE::CIdentifier(0x7d5059e8, 0xe4d8b38d)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectIdentifier                                  OpenViBE::CIdentifier(0x97c5d20d, 0x203e65b3)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_TechnicianName                                     OpenViBE::CIdentifier(0xb8a94b68, 0x389393d9)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_ExperimentDate                                     OpenViBE::CIdentifier(0xbc0266a2, 0x9c2935f1)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_SubjectAge                                         OpenViBE::CIdentifier(0xc36c6b08, 0x5227380a)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_TechnicianIdentifier                               OpenViBE::CIdentifier(0xc8ecfbbc, 0x0dcda310)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputParameterId_LaboratoryIdentifier                               OpenViBE::CIdentifier(0xe761d3d4, 0x44ba1ebf)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_OutputParameterId_EncodedMemoryBuffer                               OpenViBE::CIdentifier(0xa3d8b171, 0xf8734734)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeBuffer                                         OpenViBE::CIdentifier(0x1b7076fd, 0x449bc70a)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeEnd                                            OpenViBE::CIdentifier(0x3fc23508, 0x806753d8)
+#define OVP_GD_Algorithm_ExperimentInformationStreamEncoder_InputTriggerId_EncodeHeader                                         OpenViBE::CIdentifier(0x878eaf60, 0xf9d5303f)

 // ----------------------------------------------------
 // Streamed matrix stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamDecoder                                                                    (0x7359d0db, 0x91784b21)
-#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamDecoderDesc                                                                (0x384529d5, 0xd8e0a728)
-#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_InputParameterId_MemoryBufferToDecode                                      (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputParameterId_Matrix                                                   (0x79ef3123, 0x35e3ea4d)
-#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedHeader                                             (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedBuffer                                             (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedEnd                                                (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamDecoder                                                                    OpenViBE::CIdentifier(0x7359d0db, 0x91784b21)
+#define OVP_GD_ClassId_Algorithm_StreamedMatrixStreamDecoderDesc                                                                OpenViBE::CIdentifier(0x384529d5, 0xd8e0a728)
+#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_InputParameterId_MemoryBufferToDecode                                      OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputParameterId_Matrix                                                   OpenViBE::CIdentifier(0x79ef3123, 0x35e3ea4d)
+#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedHeader                                             OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedBuffer                                             OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_StreamedMatrixStreamDecoder_OutputTriggerId_ReceivedEnd                                                OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Stimulation stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_StimulationStreamDecoder                                                                       (0xc8807f2b, 0x0813c5b1)
-#define OVP_GD_ClassId_Algorithm_StimulationStreamDecoderDesc                                                                   (0x391a615b, 0x71cd888a)
-#define OVP_GD_Algorithm_StimulationStreamDecoder_InputParameterId_MemoryBufferToDecode                                         (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputParameterId_StimulationSet                                              (0xf46d0c19, 0x47306bea)
-#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedHeader                                                (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedBuffer                                                (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedEnd                                                   (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_StimulationStreamDecoder                                                                       OpenViBE::CIdentifier(0xc8807f2b, 0x0813c5b1)
+#define OVP_GD_ClassId_Algorithm_StimulationStreamDecoderDesc                                                                   OpenViBE::CIdentifier(0x391a615b, 0x71cd888a)
+#define OVP_GD_Algorithm_StimulationStreamDecoder_InputParameterId_MemoryBufferToDecode                                         OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputParameterId_StimulationSet                                              OpenViBE::CIdentifier(0xf46d0c19, 0x47306bea)
+#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedHeader                                                OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedBuffer                                                OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_StimulationStreamDecoder_OutputTriggerId_ReceivedEnd                                                   OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Spectrum stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_SpectrumStreamDecoder                                                                          (0x128202db, 0x449fc7a6)
-#define OVP_GD_ClassId_Algorithm_SpectrumStreamDecoderDesc                                                                      (0x54d18ee8, 0x5dbd913a)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_InputParameterId_MemoryBufferToDecode                                            (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputParameterId_MinMaxFrenquencyBands                                          (0x375e55e9, 0x9b3666f6)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputParameterId_Matrix                                                         (0x79ef3123, 0x35e3ea4d)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedHeader                                                   (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedBuffer                                                   (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedEnd                                                      (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_SpectrumStreamDecoder                                                                          OpenViBE::CIdentifier(0x128202db, 0x449fc7a6)
+#define OVP_GD_ClassId_Algorithm_SpectrumStreamDecoderDesc                                                                      OpenViBE::CIdentifier(0x54d18ee8, 0x5dbd913a)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_InputParameterId_MemoryBufferToDecode                                            OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputParameterId_MinMaxFrenquencyBands                                          OpenViBE::CIdentifier(0x375e55e9, 0x9b3666f6)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputParameterId_Matrix                                                         OpenViBE::CIdentifier(0x79ef3123, 0x35e3ea4d)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedHeader                                                   OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedBuffer                                                   OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_SpectrumStreamDecoder_OutputTriggerId_ReceivedEnd                                                      OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Signal stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_SignalStreamDecoder                                                                            (0x7237c149, 0x0ca66da7)
-#define OVP_GD_ClassId_Algorithm_SignalStreamDecoderDesc                                                                        (0xf1547d89, 0x49ffd0c2)
-#define OVP_GD_Algorithm_SignalStreamDecoder_InputParameterId_MemoryBufferToDecode                                              (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_SignalStreamDecoder_OutputParameterId_SamplingRate                                                     (0x363d8d79, 0xeefb912c)
-#define OVP_GD_Algorithm_SignalStreamDecoder_OutputParameterId_Matrix                                                           (0x79ef3123, 0x35e3ea4d)
-#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedHeader                                                     (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedBuffer                                                     (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedEnd                                                        (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_SignalStreamDecoder                                                                            OpenViBE::CIdentifier(0x7237c149, 0x0ca66da7)
+#define OVP_GD_ClassId_Algorithm_SignalStreamDecoderDesc                                                                        OpenViBE::CIdentifier(0xf1547d89, 0x49ffd0c2)
+#define OVP_GD_Algorithm_SignalStreamDecoder_InputParameterId_MemoryBufferToDecode                                              OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_SignalStreamDecoder_OutputParameterId_SamplingRate                                                     OpenViBE::CIdentifier(0x363d8d79, 0xeefb912c)
+#define OVP_GD_Algorithm_SignalStreamDecoder_OutputParameterId_Matrix                                                           OpenViBE::CIdentifier(0x79ef3123, 0x35e3ea4d)
+#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedHeader                                                     OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedBuffer                                                     OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_SignalStreamDecoder_OutputTriggerId_ReceivedEnd                                                        OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Feature vector stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamDecoder                                                                     (0xc2689ecc, 0x43b335c1)
-#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamDecoderDesc                                                                 (0xab0ae561, 0xf181e34f)
-#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_InputParameterId_MemoryBufferToDecode                                       (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputParameterId_Matrix                                                    (0x79ef3123, 0x35e3ea4d)
-#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedHeader                                              (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedBuffer                                              (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedEnd                                                 (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamDecoder                                                                     OpenViBE::CIdentifier(0xc2689ecc, 0x43b335c1)
+#define OVP_GD_ClassId_Algorithm_FeatureVectorStreamDecoderDesc                                                                 OpenViBE::CIdentifier(0xab0ae561, 0xf181e34f)
+#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_InputParameterId_MemoryBufferToDecode                                       OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputParameterId_Matrix                                                    OpenViBE::CIdentifier(0x79ef3123, 0x35e3ea4d)
+#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedHeader                                              OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedBuffer                                              OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_FeatureVectorStreamDecoder_OutputTriggerId_ReceivedEnd                                                 OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Experiment information stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamDecoder                                                             (0x6fa7d52b, 0x80e2abd6)
-#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamDecoderDesc                                                         (0x0f37ca61, 0x8a77f44e)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_InputParameterId_MemoryBufferToDecode                               (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectName                                       (0x3d3826ea, 0xe8883815)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_ExperimentIdentifier                              (0x40259641, 0x478c73de)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_LaboratoryName                                    (0x5ca80fa5, 0x774f01cb)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectGender                                     (0x7d5059e8, 0xe4d8b38d)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectIdentifier                                 (0x97c5d20d, 0x203e65b3)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_TechnicianName                                    (0xb8a94b68, 0x389393d9)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_ExperimentDate                                    (0xbc0266a2, 0x9c2935f1)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectAge                                        (0xc36c6b08, 0x5227380a)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_TechnicianIdentifier                              (0xc8ecfbbc, 0x0dcda310)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_LaboratoryIdentifier                              (0xe761d3d4, 0x44ba1ebf)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedHeader                                      (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedBuffer                                      (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedEnd                                         (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamDecoder                                                             OpenViBE::CIdentifier(0x6fa7d52b, 0x80e2abd6)
+#define OVP_GD_ClassId_Algorithm_ExperimentInformationStreamDecoderDesc                                                         OpenViBE::CIdentifier(0x0f37ca61, 0x8a77f44e)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_InputParameterId_MemoryBufferToDecode                               OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectName                                       OpenViBE::CIdentifier(0x3d3826ea, 0xe8883815)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_ExperimentIdentifier                              OpenViBE::CIdentifier(0x40259641, 0x478c73de)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_LaboratoryName                                    OpenViBE::CIdentifier(0x5ca80fa5, 0x774f01cb)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectGender                                     OpenViBE::CIdentifier(0x7d5059e8, 0xe4d8b38d)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectIdentifier                                 OpenViBE::CIdentifier(0x97c5d20d, 0x203e65b3)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_TechnicianName                                    OpenViBE::CIdentifier(0xb8a94b68, 0x389393d9)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_ExperimentDate                                    OpenViBE::CIdentifier(0xbc0266a2, 0x9c2935f1)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_SubjectAge                                        OpenViBE::CIdentifier(0xc36c6b08, 0x5227380a)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_TechnicianIdentifier                              OpenViBE::CIdentifier(0xc8ecfbbc, 0x0dcda310)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputParameterId_LaboratoryIdentifier                              OpenViBE::CIdentifier(0xe761d3d4, 0x44ba1ebf)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedHeader                                      OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedBuffer                                      OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_ExperimentInformationStreamDecoder_OutputTriggerId_ReceivedEnd                                         OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Acquisition stream decoder
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_AcquisitionStreamDecoder                                                                       (0x1e0812b7, 0x3f686dd4)
-#define OVP_GD_ClassId_Algorithm_AcquisitionStreamDecoderDesc                                                                   (0xa01599b0, 0x7f51631a)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_InputParameterId_MemoryBufferToDecode                                         (0x2f98ea3c, 0xfb0be096)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SubjectAge                                                  (0x02305f0e, 0xbe576533)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_Signal                                                      (0x4fcc8d5e, 0x5a47117d)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SubjectGender                                               (0x980fe40f, 0xb9e4a021)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_ExperimentIdentifier                                        (0xc1b135a6, 0x3feb7790)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_StimulationSet                                              (0xc3049a33, 0x890dc535)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_ChannelLocation                                             (0xedd46293, 0x67747212)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SamplingRate                                                (0xf9414765, 0x2a689150)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedHeader                                                (0x815234bf, 0xaabae5f2)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedBuffer                                                (0xaa2738bf, 0xf7fe9fc3)
-#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedEnd                                                   (0xc4aa114c, 0x628c2d77)
+#define OVP_GD_ClassId_Algorithm_AcquisitionStreamDecoder                                                                       OpenViBE::CIdentifier(0x1e0812b7, 0x3f686dd4)
+#define OVP_GD_ClassId_Algorithm_AcquisitionStreamDecoderDesc                                                                   OpenViBE::CIdentifier(0xa01599b0, 0x7f51631a)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_InputParameterId_MemoryBufferToDecode                                         OpenViBE::CIdentifier(0x2f98ea3c, 0xfb0be096)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SubjectAge                                                  OpenViBE::CIdentifier(0x02305f0e, 0xbe576533)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_Signal                                                      OpenViBE::CIdentifier(0x4fcc8d5e, 0x5a47117d)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SubjectGender                                               OpenViBE::CIdentifier(0x980fe40f, 0xb9e4a021)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_ExperimentIdentifier                                        OpenViBE::CIdentifier(0xc1b135a6, 0x3feb7790)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_StimulationSet                                              OpenViBE::CIdentifier(0xc3049a33, 0x890dc535)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_ChannelLocation                                             OpenViBE::CIdentifier(0xedd46293, 0x67747212)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputParameterId_SamplingRate                                                OpenViBE::CIdentifier(0xf9414765, 0x2a689150)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedHeader                                                OpenViBE::CIdentifier(0x815234bf, 0xaabae5f2)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedBuffer                                                OpenViBE::CIdentifier(0xaa2738bf, 0xf7fe9fc3)
+#define OVP_GD_Algorithm_AcquisitionStreamDecoder_OutputTriggerId_ReceivedEnd                                                   OpenViBE::CIdentifier(0xc4aa114c, 0x628c2d77)

 // ----------------------------------------------------
 // Matrix average
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_MatrixAverage                                                                                (0x5e5a6c1c, 0x6f6beb03)
-#define OVP_GD_ClassId_Algorithm_MatrixAverageDesc                                                                              (0x1992881f, 0xc938c0f2)
-#define OVP_GD_Algorithm_MatrixAverage_InputParameterId_InputMatrix                                                             (0x913e9c3b, 0x8a62f5e3)
-#define OVP_GD_Algorithm_MatrixAverage_InputParameterId_MatrixCountForAveraging                                                 (0xdbb778a3, 0x9c275158)
-#define OVP_GD_Algorithm_MatrixAverage_OutputParameterId_OutputAveragedMatrix                                                   (0x03ce5ae5, 0xbd9031e0)
-#define OVP_GD_Algorithm_MatrixAverage_InputTriggerId_PerformAverage                                                            (0x50b6ee87, 0xdc42e660)
-#define OVP_GD_Algorithm_MatrixAverage_InputTriggerId_Initialize                                                                (0x670ec053, 0xadfe3f5c)
+#define OVP_GD_ClassId_Algorithm_MatrixAverage                                                                                OpenViBE::CIdentifier(0x5e5a6c1c, 0x6f6beb03)
+#define OVP_GD_ClassId_Algorithm_MatrixAverageDesc                                                                              OpenViBE::CIdentifier(0x1992881f, 0xc938c0f2)
+#define OVP_GD_Algorithm_MatrixAverage_InputParameterId_InputMatrix                                                             OpenViBE::CIdentifier(0x913e9c3b, 0x8a62f5e3)
+#define OVP_GD_Algorithm_MatrixAverage_InputParameterId_MatrixCountForAveraging                                                 OpenViBE::CIdentifier(0xdbb778a3, 0x9c275158)
+#define OVP_GD_Algorithm_MatrixAverage_OutputParameterId_OutputAveragedMatrix                                                   OpenViBE::CIdentifier(0x03ce5ae5, 0xbd9031e0)
+#define OVP_GD_Algorithm_MatrixAverage_InputTriggerId_PerformAverage                                                            OpenViBE::CIdentifier(0x50b6ee87, 0xdc42e660)
+#define OVP_GD_Algorithm_MatrixAverage_InputTriggerId_Initialize                                                                OpenViBE::CIdentifier(0x670ec053, 0xadfe3f5c)

 // ----------------------------------------------------
 // Compute Filter Coefficients
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_ComputeFilterCoefficients                                                                      (0x55bad77b, 0x5d8563a7)
-#define OVP_GD_ClassId_Algorithm_ComputeFilterCoefficientsDesc                                                                  (0xd871bd98, 0x705ed068)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterKind                                                  (0x1b7bcb2c, 0xe235a6e7)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_SamplingFrequency                                           (0x25a9a0ff, 0x168f1b50)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_LowCutFrequency                                             (0x3175b774, 0xa15aeeb2)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterOrder                                                 (0x8da1e555, 0x17e17828)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_BandPassRipple                                              (0xb1500ed4, 0x0e558759)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterName                                                  (0xcfb7cdc9, 0x3eff788e)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_HighCutFrequency                                            (0xe36387b7, 0xfb766612)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_OutputParameterId_OutputCoefficientsMatrix                                   (0xe5b2a753, 0x150500b4)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputTriggerId_ComputeCoefficients                                           (0x053a2c6e, 0x3a878825)
-#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputTriggerId_Initialize                                                    (0x3d2cba61, 0x3fcf0dac)
+#define OVP_GD_ClassId_Algorithm_ComputeFilterCoefficients                                                                      OpenViBE::CIdentifier(0x55bad77b, 0x5d8563a7)
+#define OVP_GD_ClassId_Algorithm_ComputeFilterCoefficientsDesc                                                                  OpenViBE::CIdentifier(0xd871bd98, 0x705ed068)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterKind                                                  OpenViBE::CIdentifier(0x1b7bcb2c, 0xe235a6e7)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_SamplingFrequency                                           OpenViBE::CIdentifier(0x25a9a0ff, 0x168f1b50)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_LowCutFrequency                                             OpenViBE::CIdentifier(0x3175b774, 0xa15aeeb2)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterOrder                                                 OpenViBE::CIdentifier(0x8da1e555, 0x17e17828)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_BandPassRipple                                              OpenViBE::CIdentifier(0xb1500ed4, 0x0e558759)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_FilterName                                                  OpenViBE::CIdentifier(0xcfb7cdc9, 0x3eff788e)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputParameterId_HighCutFrequency                                            OpenViBE::CIdentifier(0xe36387b7, 0xfb766612)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_OutputParameterId_OutputCoefficientsMatrix                                   OpenViBE::CIdentifier(0xe5b2a753, 0x150500b4)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputTriggerId_ComputeCoefficients                                           OpenViBE::CIdentifier(0x053a2c6e, 0x3a878825)
+#define OVP_GD_Algorithm_ComputeFilterCoefficients_InputTriggerId_Initialize                                                    OpenViBE::CIdentifier(0x3d2cba61, 0x3fcf0dac)

 // ----------------------------------------------------
 // Apply Temporal Filter
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_ApplyTemporalFilter                                                                            (0x916b558f, 0xe501a2f4)
-#define OVP_GD_ClassId_Algorithm_ApplyTemporalFilterDesc                                                                        (0xccbd104b, 0xac1c7d3e)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_InputParameterId_FilterCoefsInputMatrix                                            (0xd316c4e7, 0xe4e89fd3)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_InputParameterId_SignalInputMatrix                                                 (0xd5339105, 0x1d1293f0)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_OutputParameterId_SignalOutputMatrix                                               (0x463276d1, 0xeaee8aad)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_Initialize                                                          (0x3dae69c7, 0x7cfcbe2c)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_ApplyFilterWithHistoric                                             (0xb7b7d546, 0x6000ff51)
-#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_ApplyFilter                                                         (0xbc1f5655, 0x9807b400)
+#define OVP_GD_ClassId_Algorithm_ApplyTemporalFilter                                                                            OpenViBE::CIdentifier(0x916b558f, 0xe501a2f4)
+#define OVP_GD_ClassId_Algorithm_ApplyTemporalFilterDesc                                                                        OpenViBE::CIdentifier(0xccbd104b, 0xac1c7d3e)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_InputParameterId_FilterCoefsInputMatrix                                            OpenViBE::CIdentifier(0xd316c4e7, 0xe4e89fd3)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_InputParameterId_SignalInputMatrix                                                 OpenViBE::CIdentifier(0xd5339105, 0x1d1293f0)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_OutputParameterId_SignalOutputMatrix                                               OpenViBE::CIdentifier(0x463276d1, 0xeaee8aad)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_Initialize                                                          OpenViBE::CIdentifier(0x3dae69c7, 0x7cfcbe2c)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_ApplyFilterWithHistoric                                             OpenViBE::CIdentifier(0xb7b7d546, 0x6000ff51)
+#define OVP_GD_Algorithm_ApplyTemporalFilter_InputTriggerId_ApplyFilter                                                         OpenViBE::CIdentifier(0xbc1f5655, 0x9807b400)

 // ----------------------------------------------------
 // Addition
 // ----------------------------------------------------

-#define OVP_GD_ClassId_Algorithm_Addition                                                                                (0x75fce50e, 0x8302fa91)
-#define OVP_GD_ClassId_Algorithm_AdditionDesc                                                                                (0x842e0b85, 0xa59fabc1)
-#define OVP_GD_Algorithm_Addition_InputParameterId_FirstAdditionOperand                                                         (0x00000000, 0x00000001)
-#define OVP_GD_Algorithm_Addition_InputParameterId_SecondAdditionOperand                                                        (0x00000000, 0x00000002)
-#define OVP_GD_Algorithm_Addition_OutputParameterId_AdditionResult                                                              (0x00000000, 0x00000003)
+#define OVP_GD_ClassId_Algorithm_Addition                                                                                OpenViBE::CIdentifier(0x75fce50e, 0x8302fa91)
+#define OVP_GD_ClassId_Algorithm_AdditionDesc                                                                                OpenViBE::CIdentifier(0x842e0b85, 0xa59fabc1)
+#define OVP_GD_Algorithm_Addition_InputParameterId_FirstAdditionOperand                                                         OpenViBE::CIdentifier(0x00000000, 0x00000001)
+#define OVP_GD_Algorithm_Addition_InputParameterId_SecondAdditionOperand                                                        OpenViBE::CIdentifier(0x00000000, 0x00000002)
+#define OVP_GD_Algorithm_Addition_OutputParameterId_AdditionResult                                                              OpenViBE::CIdentifier(0x00000000, 0x00000003)

 #endif // __OpenViBEPlugins_Global_Defines_H__


fix a wrong range clip

fix a wrong range clip

--- codec/encoder/core/inc/param_svc.h
+++ codec/encoder/core/inc/param_svc.h
@@ -399,9 +399,9 @@
 #ifdef ENABLE_FRAME_DUMP
       pDlp->sRecFileName[0]	= '\0';	// file to be constructed
 #endif//ENABLE_FRAME_DUMP
-      pSpatialLayer->iVideoWidth = WELS_CLIP3 (pCodingParam.sSpatialLayers[iIdxSpatial].iVideoWidth, MB_WIDTH_LUMA,
+      pSpatialLayer->iVideoWidth = WELS_CLIP3 (pCodingParam.sSpatialLayers[iIdxSpatial].iVideoWidth, 0,
                                    iPicWidth);	// frame width
-      pSpatialLayer->iVideoHeight = WELS_CLIP3 (pCodingParam.sSpatialLayers[iIdxSpatial].iVideoHeight, MB_HEIGHT_LUMA,
+      pSpatialLayer->iVideoHeight = WELS_CLIP3 (pCodingParam.sSpatialLayers[iIdxSpatial].iVideoHeight, 0,
                                     iPicHeight);// frame height

       pSpatialLayer->iSpatialBitrate	=


PLAT-526: Added Lock C++ header for lockable types

Signed-off-by: Matt Mulhern <5fc0180c4000b79368b426e76e9bc03887232fd3@srtechlabs.com>

--- common/c_cpp/src/cpp/wombat/Lock.h
+++ common/c_cpp/src/cpp/wombat/Lock.h
@@ -42,5 +42,49 @@
     std::auto_ptr <LockImpl> mImpl;
 };

+// NoLock class is used a template parameter when unlocked access is required
+class COMMONExpDLL NoLock
+{
+public:
+    NoLock ()
+    {}
+
+    ~NoLock ()
+    {}
+
+    void lock ()
+    {}
+
+    void unlock ()
+    {}
+
+private:
+    NoLock (const NoLock& copy);    // no copy
+    NoLock& operator= (const NoLock& rhs); // no assignment
+};
+
+template < class LockT >
+class COMMONExpDLL AutoLock
+{
+public:
+
+    AutoLock (LockT & l)
+        : mLock (l)
+    {
+        mLock.lock ();
+    }
+
+    ~AutoLock ()
+    {
+        mLock.unlock ();
+    }
+
+private:
+    AutoLock (const AutoLock& copy);    // no copy
+    AutoLock& operator= (const AutoLock& rhs); // no assignment
+
+    LockT   &mLock;
+};
+
 }
 #endif


Fixed doc for inclusive random generator

git-svn-id: 5398946ba177a3e438c2dae55e2cdfc2fb96c905@8559 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- common/include/pcl/common/random.h
+++ common/include/pcl/common/random.h
@@ -75,8 +75,8 @@
       typedef boost::normal_distribution<T> type;
     };

-    /** \brief UniformGenerator class generates a random number from range [min, max[ at each run picked
-      * according to a uniform distribution i.e eaach number within [min, max[ has almost the same
+    /** \brief UniformGenerator class generates a random number from range [min, max] at each run picked
+      * according to a uniform distribution i.e eaach number within [min, max] has almost the same
       * probability of being drawn.
       *
       * \author Nizar Sallem
@@ -100,7 +100,7 @@

         /** Constructor
           * \param min: included lower bound
-          * \param max: excluded higher bound
+          * \param max: included higher bound
           * \param seed: seeding value
           */
         UniformGenerator(T min = 0, T max = 1, uint32_t seed = -1);
@@ -118,7 +118,7 @@

         /** Set the uniform number generator parameters
           * \param[in] min minimum allowed value
-          * \param[in] max maximum allowed value (exclusive)
+          * \param[in] max maximum allowed value
           * \param[in] seed random number generator seed (applied if != -1)
           */
         void
@@ -134,7 +134,7 @@
         const Parameters&
         getParameters () { return (parameters_); }

-        /// \return a randomly generated number in the interval [min, max[
+        /// \return a randomly generated number in the interval [min, max]
         inline T
         run () { return (generator_ ()); }


Fix max_time for dynamic

Fix max_time for dynamic

--- tdata_io_v3_dynamic.c
+++ tdata_io_v3_dynamic.c
@@ -38,9 +38,9 @@
 /* Set the maximum drivetime of any day in tdata */
 void set_max_time(tdata_t *td){
     uint32_t jp_index;
-    td->max_time = UNREACHED;
+    td->max_time = 0;
     for (jp_index = 0; jp_index < td->n_journey_patterns; jp_index++){
-        if (td->journey_patterns[jp_index].max_time < td->max_time) {
+        if (td->journey_patterns[jp_index].max_time > td->max_time) {
             td->max_time = td->journey_patterns[jp_index].max_time;
         }
     }


Document TpDBusDaemon, TpDBusDaemonClass

20071121162443-53eee-f72b3a13eb5880a295228db66b90eecd5ce7e16a.gz

--- telepathy-glib/dbus.c
+++ telepathy-glib/dbus.c
@@ -107,13 +107,26 @@
   return bus_proxy;
 }

+/**
+ * TpDBusDaemonClass:
+ *
+ * The class of #TpDBusDaemon.
+ */
 struct _TpDBusDaemonClass
 {
+  /*<private>*/
   TpProxyClass parent_class;
 };

+/**
+ * TpDBusDaemon:
+ *
+ * A subclass of #TpProxy that represents the D-Bus daemon. It mainly provides
+ * functionality to manage well-known names on the bus.
+ */
 struct _TpDBusDaemon
 {
+  /*<private>*/
   TpProxy parent;
   /* dup'd name => _NameOwnerWatch */
   GHashTable *name_owner_watches;


TpDBusDaemon: include tp-cli-dbus-daemon-body.h

20071121172341-53eee-ece54260f380be44dc00f6cf73ea5fc8a97e31fc.gz

--- telepathy-glib/dbus.c
+++ telepathy-glib/dbus.c
@@ -35,6 +35,8 @@
 #include <telepathy-glib/util.h>

 #include "telepathy-glib/_gen/signals-marshal.h"
+
+#include "telepathy-glib/_gen/tp-cli-dbus-daemon-body.h"

 /**
  * tp_dbus_g_method_return_not_implemented:


tp_g_hash_table_update: allow key_dup, value_dup to be NULL, which is equivalent to using this function: gpointer null_dup (gpointer p) { return p; }

20071112124301-53eee-cd98cea558f9cbe09df3a8dc75c402e8e7849f1c.gz

--- telepathy-glib/util.c
+++ telepathy-glib/util.c
@@ -125,8 +125,9 @@
                                 gpointer user_data)
 {
   struct _tp_g_hash_table_update *data = user_data;
-  gpointer new_key = (data->key_dup) (key);
-  gpointer new_value = (data->value_dup) (value);
+  gpointer new_key = (data->key_dup != NULL) ? (data->key_dup) (key) : key;
+  gpointer new_value = (data->value_dup != NULL) ? (data->value_dup) (value)
+                                                 : value;

   g_hash_table_replace (data->target, new_key, new_value);
 }
@@ -136,9 +137,9 @@
  * @target: The hash table to be updated
  * @source: The hash table to update it with (read-only)
  * @key_dup: function to duplicate a key from @source so it can be be stored
- *           in @target
+ *           in @target. If NULL, the key is not copied, but is used as-is
  * @value_dup: function to duplicate a value from @source so it can be stored
- *             in @target
+ *             in @target. If NULL, the value is not copied, but is used as-is
  *
  * Add each item in @source to @target, replacing any existing item with the
  * same key. @key_dup and @value_dup are used to duplicate the items; in
@@ -155,8 +156,6 @@

   g_return_if_fail (target != NULL);
   g_return_if_fail (source != NULL);
-  g_return_if_fail (key_dup != NULL);
-  g_return_if_fail (value_dup != NULL);

   g_hash_table_foreach (source, _tp_g_hash_table_update_helper, &data);
 }


Fix typo in doc of tp_g_signal_connect_object

--- telepathy-glib/util.c
+++ telepathy-glib/util.c
@@ -893,7 +893,7 @@
  *
  * Connects a #GCallback function to a signal for a particular object, as if
  * with g_signal_connect(). Additionally, arranges for the signal handler to be
- * disconnected if @observer is destroyed.
+ * disconnected if @gobject is destroyed.
  *
  * This is similar to g_signal_connect_data(), but uses a closure which
  * ensures that the @gobject stays alive during the call to @c_handler


Automatically turn off the Alva Satellite's PROG key simulation. (dm)

git-svn-id: 30a5f035a20f1bc647618dbad7eea2a951b61b7c@512 91a5dbb7-01b9-0310-9b5f-b28072856b6e

--- Drivers/Alva/braille.c
+++ Drivers/Alva/braille.c
@@ -410,6 +410,12 @@
   return io->writePacket(bytes, sizeof(bytes), &brl->writeDelay);
 }

+static int
+writeParameter (BrailleDisplay *brl, unsigned char parameter, unsigned char setting) {
+  unsigned char bytes[] = {0X1B, 'P', 'A', 3, 0, parameter, setting, '\r'};
+  return io->writePacket(bytes, sizeof(bytes), &brl->writeDelay);
+}
+
 #include "Programs/serial.h"
 static int serialDevice = -1;
 static struct termios oldSerialSettings;
@@ -640,7 +646,10 @@
   if (!reallocateBuffers(brl)) return 0;
   ReWrite = 1;			/* To write whole display at first time */

-  if (model->Flags & BPF_CONFIGURABLE) writeFunction(brl, 0X07);
+  if (model->Flags & BPF_CONFIGURABLE) {
+    writeFunction(brl, 0X07);
+    writeFunction(brl, 0X0B);
+  }
   return 1;
 }

@@ -875,6 +884,21 @@
           ReWrite = 1;
           return 0;
         }
+
+        case 0X0B: { /* display parameters reconfigured */
+          int count = packet[3];
+
+          if (count >= 8) {
+            unsigned char frontKeys = packet[19];
+            const unsigned char progKey = 0X02;
+            if (frontKeys & progKey) {
+              unsigned char newSetting = frontKeys & ~progKey;
+              LogPrint(LOG_DEBUG, "Reconfiguring front keys: %02X -> %02X",
+                       frontKeys, newSetting);
+              writeParameter(brl, 6, newSetting);
+            }
+          }
+        }
       }
       break;


Fix Antler Moose

Fix Antler Moose

Forgot an astrisk, replaced.

--- Kitbot/src/Subsystems/AntlerMoose.h
+++ Kitbot/src/Subsystems/AntlerMoose.h
@@ -16,7 +16,7 @@
 public:
 	AntlerMoose();
 	~AntlerMoose();
-	Solenoid m_cAntlerMooseLock;
+	Solenoid* m_cAntlerMooseLock;
 	void InitDefaultCommand();
 	void Balance(float direction);
 	void moveAntlerMoose(float speed);


Clean up iterator docs; fix memory leak.

--- OpenSim/Common/ComponentList.h
+++ OpenSim/Common/ComponentList.h
@@ -1,7 +1,7 @@
 #ifndef OPENSIM_COMPONENT_LIST_H_
 #define OPENSIM_COMPONENT_LIST_H_
 /* -------------------------------------------------------------------------- *
- *                             OpenSim: ComponentList.h                           *
+ *                             OpenSim: ComponentList.h                       *
  * -------------------------------------------------------------------------- *
  * The OpenSim API is a toolkit for musculoskeletal modeling and simulation.  *
  * See http://opensim.stanford.edu and the NOTICE file for more information.  *
@@ -43,64 +43,72 @@
 * A class to specifiy a filter to be used to iterate thru components. More
 * flexible than filtering based on Type only. To write your custom filter,
 * extend this class and implement the isMatch method.
-* This's more typical visitor design pattern.
 */
+// This is more typical visitor design pattern.
 class ComponentFilter {
 public:
     ComponentFilter() {}
-    /// isMatch is the meat of the ComponentFilter, returns true if comp should
+    /// This is the meat of the ComponentFilter, returns true if comp should
     /// be iterated over.
     virtual bool isMatch(const Component& comp) const = 0;
     virtual ~ComponentFilter() {}
 };
 /**
-* A class to filter components based on Type, used as default filter for iterator
+* A class to filter components based on Type, used as default filter for
+* iterator.
 */
 template <typename T>
 class ComponentFilterByType : public ComponentFilter {
 public:
-    /// Construct a ComponentFilter that selects Compoennts based on type T
+    /// Construct a ComponentFilter that selects Components based on type T.
     ComponentFilterByType() {}
-    /// isMatch returns true if comp is of type T or derived class
+    /// isMatch returns true if comp is of type T or a derived class.
     bool isMatch(const Component& comp) const {
         return dynamic_cast<const T*>(&comp) != nullptr;
     }
     ~ComponentFilterByType() {}
 };
 /**
-* Collection of components to iterate through.  Typical use is to call
-* getComponentList to obtain an instance of this class, begin() to get iterator
-* pointing to first entry in the list then advance iterator until end()
+* Collection (linked list) of components to iterate through.  Typical use is to
+* call getComponentList to obtain an instance of this class, begin() to get
+* iterator pointing to the first entry in the list then advance the iterator
+* until end().
 */
 template <typename T>
 class ComponentList {
 public:
-    /// internal name for simple referencing
+    /// An iterator for iterating through a ComponentList<T>.
+    /// The const means that the iterator provides const references/pointers.
     typedef ComponentListIterator<T> iterator;
 #ifndef SWIG
-    /// Constructor that takes a Component to iterate over (itself and descendents)
-    /// and an optional ComponentFilter. If ComponentFilter is not specified then
-    /// ComponentFilterByType is used. Users get a chance to change the filter using
-    /// setFilter
+    /// Constructor that takes a Component to iterate over (itself and
+    /// descendents) and an optional ComponentFilter. If ComponentFilter is not
+    /// specified then ComponentFilterByType is used. You can
+    /// change the filter using setFilter.
     ComponentList(const Component& root, ComponentFilter* f =
         new ComponentFilterByType<T>()) : m_root(root), m_filter(f){}
 #else
-    ComponentList(const Component& root) : m_root(root),
+    ComponentList(const Component& root) : m_root(root),
         m_filter(new ComponentFilterByType<T>()){}
 #endif
-    /// destructor
+    /// Clean up the filter.
     virtual ~ComponentList() { delete m_filter;  }
-    /// return iterator over the tree of Components rooted at the Component passed
-    /// to ComponentList constructor.
+    /// Return iterator over the tree of Components rooted at the Component
+    /// passed to ComponentList constructor.
     ComponentListIterator<T> begin() {
         return ComponentListIterator<T>(&m_root, m_filter);
     }
-    /// Allow users to specified custom ComponentFilter.  If a filter is passed
-    /// in then the ComponentList takes ownership of it. Do not delete.
+    /// Allow users to specify a custom ComponentFilter.  If a filter is passed
+    /// Specify a filter through this list. An iterator over this list will
+    /// yield Component's that match this filter. This object takes ownership
+    /// over the filter; do not delete it yourself.
     void setFilter(ComponentFilter* filter){
+        if (m_filter) delete m_filter;
         m_filter = filter;
     }
-    /// return iterator past end of the list
+    /// Use this to check if you have reached the end of the list.
+    /// This points past the end of the list, *not* to the last item in the
+    /// list.
     ComponentListIterator<T> end() {
         return nullptr;
     }
@@ -113,8 +121,9 @@
 //==============================================================================
 //                            OPENSIM ComponentListIterator
 //==============================================================================
-/** Class used to iterate over subcomponents of specific type, default to all.
- * this is const iterator that returns const ref or a pointer on dereferencing.
+/** Class used to iterate over subcomponents of a specific type (by default,
+ * any Component).
+ * This is const iterator that returns const ref or a pointer on dereferencing.
  *
  * Use as:
 @code
@@ -134,19 +143,24 @@
     bool operator!=(const ComponentListIterator& iter) const {
          return m_node != &*iter;
     }
-    /// Dereference the iterator to get a Component of proper type (matching Filter if specified)
-    /// this is const iterator, use only const methods
+    /// Dereference the iterator to get a Component of proper type (matching
+    /// Filter if specified) this is const iterator, use only const methods
     const T& operator*() const { return *dynamic_cast<const T*>(m_node); }
     const T* operator->() const { return dynamic_cast<const T*>(m_node); }
-    /// Increment operator to advance
+    /// Prefix increment operator to get the next item in the ComponentList.
     ComponentListIterator<T>& operator++();
-    /// Method equivalent to increment operator for operator deficient languages
+    /// Method equivalent to increment operator for operator-deficient
+    /// languages.
     ComponentListIterator<T>& next() { return ++(*this); }
 private:
     void advanceToNextValidComponent();
-    const Component* m_node; // Pointer to current Component that the iterator is processing
-    const Component& _root; // Root of subtree of Compoenents that we're iterating over
-    const ComponentFilter* m_filter; // Optional filter to further select Components under _root, defaults to Filter by type
+    // Pointer to current Component that the iterator is processing
+    const Component* m_node;
+    // Root of subtree of Compoenents that we're iterating over
+    const Component& _root;
+    // Optional filter to further select Components under _root, defaults to
+    // Filter by type
+    const ComponentFilter* m_filter;
 #ifndef SWIG
     /// Constructor that takes a Component and optional ComponentFilter
     ComponentListIterator(const Component* node, ComponentFilter* filter = new ComponentFilterByType<T>()) :


Change scan to login guide url

Change scan to login guide url

--- PHPHub/Constants/APIConstant.h
+++ PHPHub/Constants/APIConstant.h
@@ -22,6 +22,6 @@
 #define ProjectURL      @"https://github.com/phphub/phphub-ios"
 #define AboutPageURL    @"https://phphub.org/about"
 #define ESTGroupURL     @"http://est-group.org"
-#define PHPHubGuide     @"https://phphub.org/helps/qr-login-guide"
+#define PHPHubGuide     @"http://7xnqwn.com1.z0.glb.clouddn.com/index.html"
 #define PHPHubTopicURL  @"https://phphub.org/topics/"
 #define SinaRedirectURL @"http://sns.whalecloud.com/sina2/callback"


Also enable x86 asm word_add

Also enable x86 asm word_add

--- src/math/bigint/mp_ia32/mp_asmi.h
+++ src/math/bigint/mp_ia32/mp_asmi.h
@@ -70,20 +70,12 @@
 */
 inline word word_add(word x, word y, word* carry)
    {
-#if 0
    asm(
       ADD_OR_SUBTRACT(ASM("adcl %[y],%[x]"))
       : [x]"=r"(x), [carry]"=r"(*carry)
       : "0"(x), [y]"rm"(y), "1"(*carry)
       : "cc");
    return x;
-#else
-   word z = x + y;
-   word c1 = (z < x);
-   z += *carry;
-   *carry = c1 | (z < *carry);
-   return z;
-#endif
    }

 /*


updated lock functions

updated lock functions


Refactor to mlt_filter_get_progress().

Refactor to mlt_filter_get_progress().

--- src/modules/core/filter_obscure.c
+++ src/modules/core/filter_obscure.c
@@ -241,7 +241,7 @@
 			struct geometry_s end;

 			// Retrieve the position
-			float position = mlt_properties_get_double(frame_properties, "filter_position");
+			float position = mlt_filter_get_progress( this, frame );

 			// Now parse the geometries
 			geometry_parse( &start, NULL, mlt_properties_get( properties, "start" ), normalised_width, normalised_height );
@@ -266,10 +266,6 @@
 	// Push this on to the service stack
 	mlt_frame_push_service( frame, this );

-	// Calculate the position for the filter effect
-	double position = mlt_filter_get_progress( this, frame );
-	mlt_properties_set_double( MLT_FRAME_PROPERTIES( frame ), "filter_position", position );
-
 	// Push the get image call
 	mlt_frame_push_get_image( frame, filter_get_image );


* simplify key and string declaration

* simplify key and string declaration

--- PublicCodeLibrary/PCLStrings.h
+++ PublicCodeLibrary/PCLStrings.h
@@ -16,7 +16,6 @@
 */

 #define PCL_DECLARE_STRING( name ) extern NSString * const name;
-#define PCL_DEFINE_STRING_WITH_AUTO_VALUE( name ) NSString * const name = @#name;
 #define PCL_DEFINE_STRING( name, value ) NSString * const name = value;

 //!@}
@@ -34,6 +33,5 @@

 #define PCL_DECLARE_KEY( key ) extern NSString * const key;
 #define PCL_DEFINE_KEY( key ) NSString * const key = @#key;
-#define PCL_DEFINE_KEY_WITH_VALUE( key, value ) NSString * const key = value;

 //!@}


gadman no longer crashes when right clicking a dnd-enabled gadget

--- src/modules/gadman/e_mod_gadman.c
+++ src/modules/gadman/e_mod_gadman.c
@@ -660,7 +660,8 @@
 _gadman_gadcon_dnd_move_cb(E_Gadcon *gc, E_Gadcon_Client *gcc)
 {
    Evas_Object *mover;
-   int x, y;
+   E_Zone *zone;
+   int x, y, mx, my;
    int ox, oy, ow, oh;

    /* only use this for dragging gadcons around the desktop */
@@ -672,7 +673,11 @@

    /* don't go out of the screen */
    x = MAX(x, gcc->dx), y = MAX(y, gcc->dy);
-   x = MIN(x, Man->width - ow + gcc->dx), y = MIN(y, Man->height - ow + gcc->dy);
+
+   /* adjust in case one screen is larger than another */
+   zone = e_gadcon_zone_get(gc);
+   mx = MIN(Man->width, zone->x + zone->w), my = MIN(Man->height, zone->y + zone->h);
+   x = MIN(x, mx - ow + gcc->dx), y = MIN(y, my - oh + gcc->dy);

    evas_object_move(gcc->o_frame, x - gcc->dx, y - gcc->dy);
    evas_object_move(mover, x - gcc->dx, y - gcc->dy);
@@ -1011,7 +1016,7 @@
    e_menu_item_label_set(mi, _("Plain"));
    e_menu_item_radio_set(mi, 1);
    e_menu_item_radio_group_set(mi, 1);
-   if (!strcmp(gcc->cf->style, E_GADCON_CLIENT_STYLE_PLAIN))
+   if (gcc->cf && (!e_util_strcmp(gcc->cf->style, E_GADCON_CLIENT_STYLE_PLAIN)))
      e_menu_item_toggle_set(mi, 1);
    e_menu_item_callback_set(mi, on_menu_style_plain, gcc);


COMP (#2239): enhanced PatientInformation to hold an application specific unique ID. The DICOM standard does not contain something like this, but for applications it is very useful to have a unique shorthand name for every patient.

--- Modules/MitkExt/IO/mitkPACSPlugin.h
+++ Modules/MitkExt/IO/mitkPACSPlugin.h
@@ -49,6 +49,7 @@
     class MITKEXT_CORE_EXPORT PatientInformation
     {
       public:
+        std::string UID; // application specific
         std::string PatientsName;       // tag 0010,0010
         std::string PatientID;          // tag 0010,0020
         std::string PatientsBirthDate;  // tag 0010,0030


readahead: apply max_sane_readahead() limit in ondemand_readahead()

Just in case someone aggressively sets a huge readahead size.

Cc: Nick Piggin <24829078df5003d9dd1dd871ca2aeb0b1cf95ef4@suse.de>
Signed-off-by: Wu Fengguang <24f7fe9d205c8a9f6ade0c2894e14303ca16087f@intel.com>
Cc: Ying Han <ac3103168222bc871c4c4626b935581739d3d72b@google.com>
Signed-off-by: Andrew Morton <5c1e68b099950c134891f0b6e179498a8ebe9cf9@linux-foundation.org>
Signed-off-by: Linus Torvalds <69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org>

--- mm/readahead.c
+++ mm/readahead.c
@@ -357,7 +357,7 @@
 		   bool hit_readahead_marker, pgoff_t offset,
 		   unsigned long req_size)
 {
-	int	max = ra->ra_pages;	/* max readahead pages */
+	unsigned long max = max_sane_readahead(ra->ra_pages);
 	pgoff_t prev_offset;
 	int	sequential;


remove debug

remove debug

--- src/modules/module-scheme-guile.c
+++ src/modules/module-scheme-guile.c
@@ -360,8 +360,6 @@
       sm->si.before = vs;
      } else if (strmatch (sym, "need-files")) {
       if (!check_files (vs)) {
-       fprintf (stderr, "NEED-FILES: some file not found\n");
-       fflush(stderr);
        /* bail out 'ere */
        scm_dynwind_end ();
        efree (sm);
@@ -370,14 +368,9 @@

       char *afteraddon = after_string_from_files (vs);
       if (afteraddon) {
-       fprintf (stderr, "NEED-FILES: after line: %s\n", afteraddon);
-       fflush(stderr);
-
        sm->si.after = set_str_add_stable (sm->si.after, afteraddon);
        efree (afteraddon);
       }
-      fprintf (stderr, "NEED-FILES: generating the after= line failed\n");
-      fflush(stderr);

       efree (vs);
      } else {


[PATCH] readahead: fix initial window size calculation

The current current get_init_ra_size is not optimal across different IO
sizes and max_readahead values.  Here is a quick summary of sizes computed
under current design and under the attached patch.  All of these assume 1st
IO at offset 0, or 1st detected sequential IO.

	32k max, 4k request

	old         new
	-----------------
	 8k        8k
	16k       16k
	32k       32k

	128k max, 4k request
	old         new
	-----------------
	32k         16k
	64k         32k
	128k        64k
	128k       128k

	128k max, 32k request
	old         new
	-----------------
	32k         64k    <-----
	64k        128k
	128k       128k

	512k max, 4k request
	old         new
	-----------------
	4k         32k     <----
	16k        64k
	64k       128k
	128k      256k
	512k      512k

Cc: Oleg Nesterov <20b70f0af00562e63758b9ee42012ecc96c58590@tv-sign.ru>
Cc: Steven Pratt <563546bcdfd39dfd5392956c38fbe7a8391cda16@austin.ibm.com>
Cc: Ram Pai <d0209d78f54ea1d3d3bcda860e7c176e91ec7e04@us.ibm.com>
Cc: Trond Myklebust <cc958843532c615cbd4920e868f78c7985331a5a@fys.uio.no>
Signed-off-by: Andrew Morton <5c1e68b099950c134891f0b6e179498a8ebe9cf9@osdl.org>
Signed-off-by: Linus Torvalds <69652caca27c8b940640ad396ab71f93cacec34f@osdl.org>

--- mm/readahead.c
+++ mm/readahead.c
@@ -83,10 +83,10 @@
 {
 	unsigned long newsize = roundup_pow_of_two(size);

-	if (newsize <= max / 64)
-		newsize = newsize * newsize;
+	if (newsize <= max / 32)
+		newsize = newsize * 4;
 	else if (newsize <= max / 4)
-		newsize = max / 4;
+		newsize = newsize * 2;
 	else
 		newsize = max;
 	return newsize;


No exit(), no perror().

No exit(), no perror().

--- KERN/usrsctp/usrsctplib/user_socket.c
+++ KERN/usrsctp/usrsctplib/user_socket.c
@@ -1435,8 +1435,7 @@

 	error = socreate(domain, &so, type, protocol);
 	if (error) {
-		perror("In user_socket(): socreate failed\n");
-		exit(1);
+		return (NULL);
 	}
 	/*
 	 * The original socket call returns the file descriptor fd.


Tiling2: Fixed error messages with ignored windows.

--- src/modules/tiling/e_mod_tiling.c
+++ src/modules/tiling/e_mod_tiling.c
@@ -428,9 +428,10 @@
          /* If focused is NULL, it should return the root. */
          Window_Tree *parent = tiling_window_tree_client_find(_G.tinfo->tree,
                ec_focused);
-         if (!parent)
+         if (!parent && (ec_focused != ec))
            {
-              if (_G.tinfo->tree && ec_focused)
+              Client_Extra *extra_focused = eina_hash_find(_G.client_extras, &ec_focused);
+              if (_G.tinfo->tree && extra_focused && !is_ignored_window(extra_focused))
                 {
                    ERR("Couldn't find tree item for focused client %p. Using root..",
                          e_client_focused_get());


update

update

update

--- MPLABX/Projeto1XC8.X/SanUSB48X.h
+++ MPLABX/Projeto1XC8.X/SanUSB48X.h
@@ -616,7 +616,7 @@
     T2CON = REG + 0b00000111;
     EEADR = 0B11111101;
     EECON1bits.RD = tmp;
-    while (EEDATA);
+    //while (EEDATA);
     TRISC &= (REG + 0xFD) << tmp;
     PR2 = REG + ((_XTAL_FREQ / 4) / (16 * freqPWM)) - 1;
     Vdig = (PR2 + 1) * duty / 25; //Vdig = (PR2+1) * 4 * duty/100; //Duty cicle (int duty) varia de 0 a 100%
@@ -630,7 +630,7 @@
     T2CON = REG + 0b00000111;
     EEADR = 0B11111101;
     EECON1bits.RD = tmp;
-    while (EEDATA);
+    //while (EEDATA);
     TRISC &= (REG + 0xFE) << tmp;
     PR2 = REG + ((_XTAL_FREQ / 4) / (16 * freqPWM)) - 1;
     Vdig = (PR2 + 1) * duty / 25; //Vdig = (PR2+1) * 4 * duty/100; //Duty cicle (int duty) varia de 0 a 100%


Added OSDetection.c

Added OSDetection.c

This file determines the operating system the current instance of the adventure
engine is running on.

error: pathspec 'src/native/platform/OSDetection.c' did not match any file(s) known to git

--- src/native/platform/OSDetection.c
+++ src/native/platform/OSDetection.c
@@ -0,0 +1,245 @@
+/*
+Copyright (c) 2013, Joshua Scoggins
+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 Joshua Scoggins 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 Joshua Scoggins 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.
+*/
+#include "../clips.h"
+#include "OSDetection.h"
+#if defined(__APPLE__)
+#include "TargetConditionals.h"
+#endif
+//These are function definitions to find out what OS we're on
+extern void* OSIsLinux(void* theEnv) {
+#if defined(__linux__)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsWindows64(void* theEnv) {
+#if defined(_WIN64)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsWindows32(void* theEnv) {
+#if defined(_WIN32)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsOSX(void* theEnv) {
+#if defined(__APPLE__) && defined(TARGET_OS_MAC)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsAndroid(void* theEnv) {
+#if defined(__ANDROID__) || defined(__android__)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsIOS(void* theEnv) {
+#if defined(__APPLE__) && defined(TARGET_OS_IPHONE)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsFreeBSD(void* theEnv) {
+#if defined(__FreeBSD__)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsOpenBSD(void* theEnv) {
+#if defined(__OpenBSD__)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsNetBSD(void* theEnv) {
+#if defined(__NetBSD__)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSGetOperatingSystem(void* theEnv);
+
+/*
+ * These are for consoles...by default these will return FALSE
+ * I use these generic names because there are many devices (future and
+ * current) that are a part of this class of operating systems. We use the
+ * platform detection functions to figure out what platform we are on
+ */
+extern void* OSIsMicrosoftConsole(void* theEnv) {
+   //Microsoft's console is easy
+#if defined(_XBOX)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsSonyConsole(void* theEnv) {
+   //Playstation 2 isn't supported
+#if defined(__PPU__) || defined(PSP) || defined(__psp__) || defined(__PSP__) || defined(_PSP)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+extern void* OSIsNintendo(void* theEnv) {
+   //GameCube isn't supported...not enough RAM!
+#if defined(__wii__) || defined(_WII)
+   return TrueSymbol();
+#else
+   return FalseSymbol();
+#endif
+}
+
+extern void OSDetectionFunctionDefinitions(void* theEnv) {
+   EnvDefineFunction2(theEnv,
+         (char*)"get-operating-system",
+         'k',
+         PTIEF OSGetOperatingSystem,
+         (char*)"OSGetOperatingSystem",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-android",
+         'b',
+         PTIEF OSIsAndroid,
+         (char*)"OSIsAndroid",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-windows32",
+         'b',
+         PTIEF OSIsWindows32,
+         (char*)"OSIsWindows32",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-windows64",
+         'b',
+         PTIEF OSIsWindows64,
+         (char*)"OSIsWindows64",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-osx",
+         'b',
+         PTIEF OSIsOSX,
+         (char*)"OSIsOSX",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-linux",
+         'b',
+         PTIEF OSIsLinux,
+         (char*)"OSIsLinux",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-freebsd",
+         'b',
+         PTIEF OSIsFreeBSD,
+         (char*)"OSIsFreeBSD",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-openbsd",
+         'b',
+         PTIEF OSIsOpenBSD,
+         (char*)"OSIsOpenBSD",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-netbsd",
+         'b',
+         PTIEF OSIsNetBSD,
+         (char*)"OSIsNetBSD",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-ios",
+         'b',
+         PTIEF OSIsIOS,
+         (char*)"OSIsIOS",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-microsoft-console",
+         'b',
+         PTIEF OSIsMicrosoftConsole,
+         (char*)"OSIsMicrosoftConsole",
+         (char*) "00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-sony-console",
+         'b',
+         PTIEF OSIsSonyConsole,
+         (char*)"OSIsSonyConsole",
+         (char*)"00a");
+   EnvDefineFunction2(theEnv,
+         (char*)"operating-system-is-nintendo-console",
+         'b',
+         PTIEF OSIsNintendoConsole,
+         (char*)"OSIsNintendoConsole",
+         (char*)"00a");
+}
+
+extern void* OSGetOperatingSystem(void* theEnv) {
+#if defined(__linux__)
+   return EnvAddSymbol(theEnv, "Linux");
+#elif defined(__FreeBSD__)
+   return EnvAddSymbol(theEnv, "FreeBSD");
+#elif defined(__OpenBSD__)
+   return EnvAddSymbol(theEnv, "OpenBSD");
+#elif defined(__NetBSD__)
+   return EnvAddSymbol(theEnv, "NetBSD");
+#elif defined(__ANDROID__)
+   return EnvAddSymbol(theEnv, "Android");
+#elif defined(_WIN64)
+   return EnvAddSymbol(theEnv, "Windows64");
+#elif defined(_WIN32)
+   return EnvAddSymbol(theEnv, "Windows32");
+#elif defined(__APPLE__)
+   #if TARGET_OS_MAC
+      return EnvAddSymbol(theEnv, "OSX");
+   #elif TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
+      return EnvAddSymbol(theEnv, "IOS");
+   #else
+      return EnvAddSymbol(theEnv, "AppleUnknown");
+   #endif
+#elif defined(PS3) || defined(PSP) || defined(__PPU__)
+   return EnvAddSymbol(theEnv, "SonyConsole");
+#elif defined(_XBOX)
+   return EnvAddSymbol(theEnv, "MicrosoftConsole");
+#elif defined(__wii__) || defined(_WII)
+   return EnvAddSymbol(theEnv, "NintendoConsole");
+//Add more operating systems here
+#else
+   return EnvAddSymbol(theEnv, "Unknown");
+#endif
+}
+
+


MemPool

MemPool

--- momo/MemPool.h
+++ momo/MemPool.h
@@ -36,6 +36,14 @@
 		return (maxAlignment > blockSize && maxAlignment > 1)
 			? GetBlockAlignment(blockSize, maxAlignment / 2) : maxAlignment;
 	}
+
+	static constexpr size_t CorrectBlockSize(size_t blockSize, size_t blockAlignment,
+		size_t blockCount) noexcept
+	{
+		return (blockCount == 1) ? std::minmax(blockSize, size_t{1}).second
+			: ((blockSize <= blockAlignment) ? 2 * blockAlignment
+				: internal::UIntMath<>::Ceil(blockSize, blockAlignment));
+	}
 };

 template<size_t tBlockCount = MemPoolConst::defaultBlockCount,
@@ -50,40 +58,20 @@

 public:
 	explicit MemPoolParams(size_t blockSize) noexcept
-		: blockSize(blockSize),
-		blockAlignment(internal::UIntConst::maxAlignment)
-	{
-		while (blockAlignment > blockSize && blockAlignment > 1)
-			blockAlignment /= 2;
-		pvCorrectBlockSize();
+		: MemPoolParams(blockSize, MemPoolConst::GetBlockAlignment(blockSize))
+	{
 	}

 	explicit MemPoolParams(size_t blockSize, size_t blockAlignment) noexcept
-		: blockSize(blockSize),
-		blockAlignment(blockAlignment)
 	{
 		MOMO_ASSERT(blockAlignment > 0);
-		pvCorrectBlockSize();
+		this->blockSize = MemPoolConst::CorrectBlockSize(blockSize, blockAlignment, blockCount);
+		this->blockAlignment = blockAlignment;
 	}

 	bool IsEqual(const MemPoolParams& params) const noexcept
 	{
 		return blockSize == params.blockSize && blockAlignment == params.blockAlignment;
-	}
-
-private:
-	void pvCorrectBlockSize() noexcept
-	{
-		if (blockCount == 1)
-		{
-			if (blockSize == 0)
-				blockSize = 1;
-		}
-		else
-		{
-			blockSize = (blockSize <= blockAlignment) ? 2 * blockAlignment
-				: internal::UIntMath<>::Ceil(blockSize, blockAlignment);
-		}
 	}

 protected:
@@ -104,10 +92,8 @@
 	static const size_t blockAlignment = tBlockAlignment;
 	MOMO_STATIC_ASSERT(0 < blockAlignment && blockAlignment <= 1024);

-	static const size_t blockSize = (blockCount == 1)
-		? ((tBlockSize > 0) ? tBlockSize : 1)
-		: ((tBlockSize <= blockAlignment) ? 2 * blockAlignment
-			: internal::UIntMath<>::Ceil(tBlockSize, blockAlignment));
+	static const size_t blockSize = MemPoolConst::CorrectBlockSize(tBlockSize,
+		blockAlignment, blockCount);

 	static const size_t cachedFreeBlockCount = tCachedFreeBlockCount;


Verified ChildHandle, and correct the name for a child.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>

git-svn-id: 3158a46dfd52e07d1fda3e32e1ab2e353a00b20f@16740 6f19259b-4bc3-4df7-8a09-765794883524

--- NetworkPkg/IScsiDxe/ComponentName.c
+++ NetworkPkg/IScsiDxe/ComponentName.c
@@ -1,7 +1,7 @@
 /** @file
   UEFI Component Name(2) protocol implementation for iSCSI.

-Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.

+Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.

 This program and the accompanying materials
 are licensed and made available under the terms and conditions of the BSD License
 which accompanies this distribution.  The full text of the license may be found at
@@ -102,9 +102,9 @@
 }

 /**
-  Update the component name for the iSCSI NIC handle.
-
-  @param[in]  Controller            The handle of the NIC controller.
+  Update the component name for the iSCSI instance.
+
+  @param[in]  IScsiExtScsiPassThru  A pointer to the EFI_EXT_SCSI_PASS_THRU_PROTOCOL instance.
   @param[in]  Ipv6Flag              TRUE if IP6 network stack is used.

   @retval EFI_SUCCESS               Update the ControllerNameTable of this instance successfully.
@@ -114,58 +114,28 @@
 **/
 EFI_STATUS
 UpdateName (
-  IN   EFI_HANDLE  Controller,
+  IN   EFI_EXT_SCSI_PASS_THRU_PROTOCOL *IScsiExtScsiPassThru,
   IN   BOOLEAN     Ipv6Flag
   )
 {
-  EFI_STATUS                  Status;
-  EFI_MAC_ADDRESS             MacAddr;
-  UINTN                       HwAddressSize;
-  UINT16                      VlanId;
-  ISCSI_NIC_INFO              *ThisNic;
-  ISCSI_NIC_INFO              *NicInfo;
-  LIST_ENTRY                  *Entry;
-  CHAR16                      HandleName[80];
-
-  //
-  // Get MAC address of this network device.
-  //
-  Status = NetLibGetMacAddress (Controller, &MacAddr, &HwAddressSize);
-  if (EFI_ERROR (Status)) {
-    return Status;
-  }
-
-  //
-  // Get VLAN ID of this network device.
-  //
-  VlanId = NetLibGetVlanId (Controller);
-
-  //
-  // Check whether the NIC information exists.
-  //
-  ThisNic = NULL;
-
-  NET_LIST_FOR_EACH (Entry, &mPrivate->NicInfoList) {
-    NicInfo = NET_LIST_USER_STRUCT (Entry, ISCSI_NIC_INFO, Link);
-    if (NicInfo->HwAddressSize == HwAddressSize &&
-        CompareMem (&NicInfo->PermanentAddress, MacAddr.Addr, HwAddressSize) == 0 &&
-        NicInfo->VlanId == VlanId) {
-
-      ThisNic = NicInfo;
-      break;
-    }
-  }
-
-  if (ThisNic == NULL) {
-    return EFI_UNSUPPORTED;
-  }
-
+  EFI_STATUS                       Status;
+  CHAR16                           HandleName[80];
+  ISCSI_DRIVER_DATA                *Private;
+  UINT8                            NicIndex;
+
+  if (IScsiExtScsiPassThru == NULL) {
+    return EFI_INVALID_PARAMETER;
+  }
+
+  Private  = ISCSI_DRIVER_DATA_FROM_EXT_SCSI_PASS_THRU (IScsiExtScsiPassThru);
+  NicIndex = Private->Session->ConfigData->NicIndex;
+
   UnicodeSPrint (
     HandleName,
     sizeof (HandleName),
     L"iSCSI (%s, NicIndex=%d)",
     Ipv6Flag ? L"IPv6" : L"IPv4",
-    ThisNic->NicIndex
+    NicIndex
   );

   if (gIScsiControllerNameTable != NULL) {
@@ -192,7 +162,6 @@
            FALSE
            );
 }
-

 /**
   Retrieves a Unicode string that is the user readable name of the controller
@@ -272,11 +241,18 @@
   OUT CHAR16                        **ControllerName
   )
 {
+  EFI_STATUS                      Status;
+
   EFI_HANDLE                      IScsiController;
   BOOLEAN                         Ipv6Flag;
-  EFI_STATUS                      Status;
   EFI_GUID                        *IScsiPrivateGuid;
   ISCSI_PRIVATE_PROTOCOL          *IScsiIdentifier;
+
+  EFI_EXT_SCSI_PASS_THRU_PROTOCOL *IScsiExtScsiPassThru;
+
+  if (ControllerHandle == NULL) {
+    return EFI_UNSUPPORTED;
+  }

   //
   // Get the handle of the controller we are controling.
@@ -295,9 +271,6 @@
     }
   }

-  //
-  // Retrieve an instance of a produced protocol from IScsiController
-  //
   Status = gBS->OpenProtocol (
                   IScsiController,
                   IScsiPrivateGuid,
@@ -310,9 +283,55 @@
     return Status;
   }

-  Status = UpdateName(IScsiController, Ipv6Flag);
-  if (EFI_ERROR(Status)) {
-    return Status;
+  if(ChildHandle != NULL) {
+    if(!Ipv6Flag) {
+      //
+      // Make sure this driver produced ChildHandle
+      //
+      Status = EfiTestChildHandle (
+                 ControllerHandle,
+                 ChildHandle,
+                 &gEfiTcp4ProtocolGuid
+                 );
+      if (EFI_ERROR (Status)) {
+        return Status;
+      }
+    } else {
+      //
+      // Make sure this driver produced ChildHandle
+      //
+      Status = EfiTestChildHandle (
+                 ControllerHandle,
+                 ChildHandle,
+                 &gEfiTcp6ProtocolGuid
+                 );
+      if (EFI_ERROR (Status)) {
+        return Status;
+      }
+    }
+
+    //
+    // Retrieve an instance of a produced protocol from ChildHandle
+    //
+    Status = gBS->OpenProtocol (
+                    ChildHandle,
+                    &gEfiExtScsiPassThruProtocolGuid,
+                   (VOID **)&IScsiExtScsiPassThru,
+                    NULL,
+                    NULL,
+                    EFI_OPEN_PROTOCOL_GET_PROTOCOL
+                    );
+    if (EFI_ERROR (Status)) {
+      return Status;
+    }
+
+    //
+    // Update the component name for this child handle.
+    //
+    Status = UpdateName (IScsiExtScsiPassThru, Ipv6Flag);
+    if (EFI_ERROR (Status)) {
+      return Status;
+    }
   }

   return LookupUnicodeString2 (


MdePkg: MTftp6: Correct #define value in Mtfp6.h

defined values of EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION and
EFI_MTFTP6_ERRORCODE_FILE_ALREADY_EXISTS are the same. This patch
corrects the value of EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION to 4.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hegde Nagaraj P <1a8707f9a9e9fa883c77999d89b885ef97d6a2fb@hpe.com>
Reviewed-by: Ye Ting <fe1f30c12225d8cd094a72a37b5acbb01ee15159@intel.com>
Reviewed-by: Sriram Subramanian <f612f24f610c520953254974a2afa5c29f07dc84@hpe.com>
Reviewed-By: Wu Jiaxin <91f509c31e98a6df13950454fe51aea543223eaa@intel.com>
Reviewed-by: Fu Siyuan <eef549df2036636f79f66102b4e2dc444721df8f@intel.com>

--- MdePkg/Include/Protocol/Mtftp6.h
+++ MdePkg/Include/Protocol/Mtftp6.h
@@ -4,6 +4,8 @@
   multicast TFTP operations.

   Copyright (c) 2008 - 2011, Intel Corporation. All rights reserved.

+  (C) Copyright 2016 Hewlett Packard Enterprise Development LP

+
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
   which accompanies this distribution.  The full text of the license may be found at
@@ -70,7 +72,7 @@
 ///
 /// The MTFTPv6 operation was illegal.
 ///
-#define EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION     6
+#define EFI_MTFTP6_ERRORCODE_ILLEGAL_OPERATION     4
 ///
 /// The transfer ID is unknown.
 ///


nwfilter: Display the pcap errror message

Display the pcap error message in the log.

Signed-off-by: Stefan Berger <5c96973112e540fb909b13997fcd087e5bfbee96@linux.vnet.ibm.com>

--- src/nwfilter/nwfilter_dhcpsnoop.c
+++ src/nwfilter/nwfilter_dhcpsnoop.c
@@ -1113,8 +1113,9 @@
     if (pcap_set_snaplen(handle, PCAP_PBUFSIZE) < 0 ||
         pcap_set_buffer_size(handle, PCAP_BUFFERSIZE) < 0 ||
         pcap_activate(handle) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("setup of pcap handle failed"));
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("setup of pcap handle failed: %s"),
+                       pcap_geterr(handle));
         goto cleanup;
     }