You can subscribe to this list here.
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
(42) |
Aug
(91) |
Sep
(97) |
Oct
(69) |
Nov
(16) |
Dec
(32) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2009 |
Jan
(74) |
Feb
(109) |
Mar
(117) |
Apr
(86) |
May
(84) |
Jun
(47) |
Jul
(30) |
Aug
(25) |
Sep
(39) |
Oct
(59) |
Nov
(42) |
Dec
(38) |
| 2010 |
Jan
(30) |
Feb
(43) |
Mar
(59) |
Apr
(67) |
May
(29) |
Jun
(47) |
Jul
(48) |
Aug
(22) |
Sep
(22) |
Oct
(36) |
Nov
(40) |
Dec
(3) |
| 2011 |
Jan
(39) |
Feb
(21) |
Mar
(36) |
Apr
(35) |
May
(8) |
Jun
|
Jul
(14) |
Aug
(4) |
Sep
(10) |
Oct
(27) |
Nov
(1) |
Dec
|
| 2012 |
Jan
(2) |
Feb
(2) |
Mar
|
Apr
(9) |
May
(1) |
Jun
(1) |
Jul
(7) |
Aug
|
Sep
(15) |
Oct
(1) |
Nov
(3) |
Dec
(6) |
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
|
Jun
(2) |
Jul
|
Aug
(5) |
Sep
(15) |
Oct
|
Nov
|
Dec
(1) |
| 2014 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2015 |
Jan
|
Feb
(5) |
Mar
|
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
(19) |
Oct
|
Nov
|
Dec
(1) |
| 2016 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
(6) |
Oct
|
Nov
|
Dec
(2) |
| 2017 |
Jan
(16) |
Feb
(8) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2018 |
Jan
|
Feb
|
Mar
(7) |
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(5) |
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(14) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2021 |
Jan
|
Feb
|
Mar
(7) |
Apr
(14) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
(3) |
Dec
|
| 2023 |
Jan
(1) |
Feb
|
Mar
(12) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <bor...@us...> - 2020-08-04 17:46:59
|
Revision: 3757
http://sourceforge.net/p/ftm/code/3757
Author: borghesi
Date: 2020-08-04 17:46:57 +0000 (Tue, 04 Aug 2020)
Log Message:
-----------
ftm.editor: added missing methods in fmat_gui_wave
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-30 07:53:50 UTC (rev 3756)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-08-04 17:46:57 UTC (rev 3757)
@@ -2315,8 +2315,10 @@
fmat_t *self = (fmat_t *)obj;
float *ptr = fmat_lock(self) + onset;
int stride = fmat_get_n(self);
+ int size = self->m;
- ptr[index*stride] = value;
+ if(index < size)
+ ptr[index*stride] = value;
fmat_unlock(self);
@@ -2323,6 +2325,23 @@
fts_object_changed((fts_object_t *)obj);
}
+static float
+fmat_gui_wave_get(void *obj, void *context, int onset, int index)
+{
+ fmat_t *self = (fmat_t *)obj;
+ float *ptr = fmat_lock(self) + onset;
+ int stride = fmat_get_n(self);
+ int size = self->m;
+ float value = 0.0;
+
+ if(index < size)
+ value = ptr[index*stride];
+
+ fmat_unlock(self);
+
+ return value;
+}
+
static void
fmat_gui_wave_shift_data(void *obj, void *context, int onset, int index, int shiftSize)
{
@@ -2361,6 +2380,20 @@
}
static void
+fmat_gui_wave_append(void *obj, void *context, int onset, int num, double startValue, double endValue)
+{
+ fmat_t *self = (fmat_t *)obj;
+ int oldSize = self->m;
+
+ fmat_lock_capacity(self, (self->m + num) * self->n);
+ fmat_insert_rows_nogrow(self, oldSize, num);
+ fmat_unlock(self);
+ fmat_gui_wave_interpolate(obj, context, onset, oldSize, oldSize+num, startValue, endValue);
+
+ fts_object_changed((fts_object_t *)obj);
+}
+
+static void
fmat_gui_fvec_install(void)
{
static imtr_guiInterfaceWave fmat_gui_interface_fvec;
@@ -2385,8 +2418,10 @@
fmat_gui_interface_fvec.interpolate = fmat_gui_wave_interpolate;
fmat_gui_interface_fvec.increment = fmat_gui_wave_increment;
fmat_gui_interface_fvec.set = fmat_gui_wave_set;
+ fmat_gui_interface_fvec.get = fmat_gui_wave_get;
fmat_gui_interface_fvec.shiftData = fmat_gui_wave_shift_data;
fmat_gui_interface_fvec.deleteInterval = fmat_gui_wave_delete_interval;
+ fmat_gui_interface_fvec.append = fmat_gui_wave_append;
fts_class_instantiate(fmat_class);
fts_class_gui_interface(fmat_class, fts_s_fvec, &fmat_gui_interface_fvec);
@@ -2417,8 +2452,10 @@
fmat_gui_interface_wave.interpolate = fmat_gui_wave_interpolate;
fmat_gui_interface_wave.increment = fmat_gui_wave_increment;
fmat_gui_interface_wave.set = fmat_gui_wave_set;
+ fmat_gui_interface_wave.get = fmat_gui_wave_get;
fmat_gui_interface_wave.shiftData = fmat_gui_wave_shift_data;
fmat_gui_interface_wave.deleteInterval = fmat_gui_wave_delete_interval;
+ fmat_gui_interface_wave.append = fmat_gui_wave_append;
fts_class_instantiate(fmat_class);
fts_class_gui_interface(fmat_class, fts_s_wave, &fmat_gui_interface_wave);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:53:52
|
Revision: 3756
http://sourceforge.net/p/ftm/code/3756
Author: borghesi
Date: 2020-07-30 07:53:50 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/distrib/package-info.json
Modified: trunk/ftm/distrib/package-info.json
===================================================================
--- trunk/ftm/distrib/package-info.json 2020-07-30 07:52:15 UTC (rev 3755)
+++ trunk/ftm/distrib/package-info.json 2020-07-30 07:53:50 UTC (rev 3756)
@@ -4,7 +4,7 @@
"description" : "FTM: extended real-time object system for Max/MSP",
"homepatcher" : "FTMExamplesOverview.maxpat",
"max_version_max" : "none",
- "max_version_min" : "7.1",
+ "max_version_min" : "7.0",
"os" : {
"macintosh" : {
"platform" : [ "ia32", "x64" ],
@@ -19,6 +19,6 @@
}
,
"tags" : [ "data", "analysis", "synthesis", "externals", "gesture", "visualisation" ],
- "version" : "3.0.0.BETA",
- "website" : "http://ftm.ircam.fr"
+ "version" : "2.7.4.BETA",
+ "website" : "https://forum.ircam.fr/projects/detail/ftm/"
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:52:16
|
Revision: 3755
http://sourceforge.net/p/ftm/code/3755
Author: borghesi
Date: 2020-07-30 07:52:15 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Added Paths:
-----------
trunk/ftm/distrib/readme.md
Added: trunk/ftm/distrib/readme.md
===================================================================
--- trunk/ftm/distrib/readme.md (rev 0)
+++ trunk/ftm/distrib/readme.md 2020-07-30 07:52:15 UTC (rev 3755)
@@ -0,0 +1,16 @@
+# FTM
+by ISMM Team @ Ircam - Centre Pompidou (http://www.ircam.fr)
+
+This version requires Max 7 or higher.
+
+##### Manual installation:
+Copy the FTM folder to your **~/Documents/Max 8/packages** or **~/Documents/Max 7/Packages** folder.
+
+[ISMM Team Pages]
+(https://www.stms-lab.fr/team/interaction-son-musique-mouvement/)
+(http://ismm.ircam.fr)
+
+[FTM Page at IRCAM Forum](https://forum.ircam.fr/projects/detail/ftm/)
+[old FTM Page at IRCAM](http://ftm.ircam.fr/)
+
+
Property changes on: trunk/ftm/distrib/readme.md
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:51:53
|
Revision: 3754
http://sourceforge.net/p/ftm/code/3754
Author: borghesi
Date: 2020-07-30 07:51:52 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Added Paths:
-----------
trunk/ftm/distrib/old-icon.png
Added: trunk/ftm/distrib/old-icon.png
===================================================================
(Binary files differ)
Index: trunk/ftm/distrib/old-icon.png
===================================================================
--- trunk/ftm/distrib/old-icon.png 2020-07-30 07:51:23 UTC (rev 3753)
+++ trunk/ftm/distrib/old-icon.png 2020-07-30 07:51:52 UTC (rev 3754)
Property changes on: trunk/ftm/distrib/old-icon.png
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:51:25
|
Revision: 3753
http://sourceforge.net/p/ftm/code/3753
Author: borghesi
Date: 2020-07-30 07:51:23 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/distrib/icon.png
Modified: trunk/ftm/distrib/icon.png
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:51:03
|
Revision: 3752
http://sourceforge.net/p/ftm/code/3752
Author: borghesi
Date: 2020-07-30 07:51:01 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-30 07:50:24 UTC (rev 3751)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-30 07:51:01 UTC (rev 3752)
@@ -5706,7 +5706,8 @@
sequence_gui_interface_score.getMinMaxByColumn = sequence_gui_score_get_minmax_by_column;
sequence_gui_interface_score.getTwoMinMaxByColumn = sequence_gui_score_get_two_minmax_by_column;
sequence_gui_interface_score.getMeanStdDevByColumn = sequence_gui_score_get_mean_stddev_by_column;
- sequence_gui_interface_score.getMaxNumParams = sequence_gui_score_get_max_num_params;
+ sequence_gui_interface_score.getMaxNumParams =
+ sequence_gui_score_get_max_num_params;
sequence_gui_interface_score.setPitch = sequence_gui_score_set_pitch;
fts_class_instantiate(sequence_class);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-30 07:50:26
|
Revision: 3751
http://sourceforge.net/p/ftm/code/3751
Author: borghesi
Date: 2020-07-30 07:50:24 +0000 (Thu, 30 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/ftmlib/ftmlib.c
Modified: trunk/ftm/ftmlib/ftmlib.c
===================================================================
--- trunk/ftm/ftmlib/ftmlib.c 2020-07-22 16:23:20 UTC (rev 3750)
+++ trunk/ftm/ftmlib/ftmlib.c 2020-07-30 07:50:24 UTC (rev 3751)
@@ -934,7 +934,7 @@
fts_post("FTM & Co %s (%s)" build_config "\n",
fts_symbol_name(ftm_version_symbol), FTM_VERSION_DATE);
- fts_post(" Copyright \u00A9 2003 - 2012 IRCAM - Centre Pompidou\n");
+ fts_post(" Copyright \u00A9 2003 - 2020 IRCAM - Centre Pompidou\n");
/* FTM (system) functions */
sym_wiki = fts_new_symbol("wiki");
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-22 16:23:22
|
Revision: 3750
http://sourceforge.net/p/ftm/code/3750
Author: borghesi
Date: 2020-07-22 16:23:20 +0000 (Wed, 22 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-22 14:27:12 UTC (rev 3749)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-22 16:23:20 UTC (rev 3750)
@@ -420,20 +420,6 @@
return 0;
}
-static void
-fts_get_ring(void *obj, void *context, int *ringIndex, int *ringSize, int *ringTail, double *ringOffset)
-{
- *ringIndex = 0;
- *ringSize = 0;
- *ringTail = 0;
- *ringOffset = 0.0;
-}
-
-static void
-fts_set_ring_offset(void *obj, void *context, double ringOffset)
-{
-}
-
#pragma mark Bpf: BPF interface
/************************************************************
*
@@ -534,8 +520,8 @@
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&bpf_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getRing = NULL;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->setRingOffset = NULL;
bpf_gui_interface_bpf.getSize = bpf_gui_bpf_get_size;
bpf_gui_interface_bpf.getPoint = bpf_gui_bpf_get_point;
@@ -692,8 +678,8 @@
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&bpf_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->setRingOffset = NULL;
bpf_gui_interface_matrix.getMatrixConfig = bpf_gui_matrix_get_matrix_config;
bpf_gui_interface_matrix.getRows = bpf_gui_matrix_get_rows;
@@ -958,8 +944,8 @@
((imtr_guiInterface *)&dict_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&dict_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&dict_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->setRingOffset = NULL;
dict_gui_interface_matrix.getMatrixConfig = dict_gui_matrix_get_matrix_config;
dict_gui_interface_matrix.getRows = dict_gui_matrix_get_rows;
@@ -1416,8 +1402,8 @@
((imtr_guiInterface *)&mat_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&mat_gui_interface_markers)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&mat_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->getRing = NULL;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->setRingOffset = NULL;
mat_gui_interface_markers.isVector = mat_gui_markers_is_vector;
mat_gui_interface_markers.getSize = mat_gui_markers_get_size;
@@ -1837,8 +1823,8 @@
((imtr_guiInterface *)&mat_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&mat_gui_interface_score)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&mat_gui_interface_score)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->getRing = NULL;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->setRingOffset = NULL;
mat_gui_interface_score.isVector = mat_gui_score_is_vector;
mat_gui_interface_score.getSize = mat_gui_score_get_size;
@@ -2098,8 +2084,8 @@
((imtr_guiInterface *)&mat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&mat_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&mat_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->setRingOffset = NULL;
mat_gui_interface_matrix.getMatrixConfig = mat_gui_matrix_get_matrix_config;
mat_gui_interface_matrix.getRows = mat_gui_matrix_get_rows;
@@ -2388,8 +2374,8 @@
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_fvec)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->setRingOffset = NULL;
fmat_gui_interface_fvec.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_fvec.getPointer = fmat_gui_wave_get_ptr;
@@ -2420,8 +2406,8 @@
((imtr_guiInterface *)&fmat_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_wave)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_wave)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->setRingOffset = NULL;
fmat_gui_interface_wave.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_wave.getPointer = fmat_gui_wave_get_ptr;
@@ -2622,8 +2608,8 @@
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->setRingOffset = NULL;
fmat_gui_interface_multiwave.getWavesNum = fmat_gui_multiwave_get_waves_num;
fmat_gui_interface_multiwave.getSize = fmat_gui_multiwave_get_size;
@@ -2839,8 +2825,8 @@
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->setRingOffset = NULL;
fmat_gui_interface_sonogram.getLength = fmat_gui_sonogram_get_length;
fmat_gui_interface_sonogram.getSpectrumSize = fmat_gui_sonogram_get_spectrum_size;
@@ -3190,8 +3176,8 @@
((imtr_guiInterface *)&fmat_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_traces)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->setRingOffset = NULL;
fmat_gui_interface_traces.isVector = fmat_gui_traces_is_vector;
fmat_gui_interface_traces.isTimeTagged = fmat_gui_traces_is_time_tagged;
@@ -3396,8 +3382,8 @@
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_pixels)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->setRingOffset = NULL;
fmat_gui_interface_pixels.getLength = fmat_gui_pixels_get_length;
fmat_gui_interface_pixels.getSize = fmat_gui_pixels_get_size;
@@ -3562,8 +3548,8 @@
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->setRingOffset = NULL;
fmat_gui_interface_bpf.getSize = fmat_gui_bpf_get_size;
fmat_gui_interface_bpf.getPoint = fmat_gui_bpf_get_point;
@@ -3810,8 +3796,8 @@
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->setRingOffset = NULL;
fmat_gui_interface_multibpf.getSize = fmat_gui_multibpf_get_size;
fmat_gui_interface_multibpf.getBpfNum = fmat_gui_multibpf_get_bpf_num;
@@ -3967,8 +3953,8 @@
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fmat_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->setRingOffset = NULL;
fmat_gui_interface_matrix.getMatrixConfig = fmat_gui_matrix_get_matrix_config;
fmat_gui_interface_matrix.getRows = fmat_gui_matrix_get_rows;
@@ -4220,8 +4206,8 @@
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fvec_gui_interface_fvec)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getRing = NULL;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->setRingOffset = NULL;
fvec_gui_interface_fvec.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_fvec.getPointer = fvec_gui_wave_get_ptr;
@@ -4254,8 +4240,8 @@
((imtr_guiInterface *)&fvec_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fvec_gui_interface_wave)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fvec_gui_interface_wave)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->getRing = NULL;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->setRingOffset = NULL;
fvec_gui_interface_wave.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_wave.getPointer = fvec_gui_wave_get_ptr;
@@ -4372,8 +4358,8 @@
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&fvec_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->setRingOffset = NULL;
fvec_gui_interface_matrix.getMatrixConfig = fvec_gui_matrix_get_matrix_config;
fvec_gui_interface_matrix.getRows = fvec_gui_matrix_get_rows;
@@ -4644,8 +4630,8 @@
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->setRingOffset = NULL;
sequence_gui_interface_bpf.getSize = sequence_gui_bpf_get_size;
sequence_gui_interface_bpf.getPoint = sequence_gui_bpf_get_point;
@@ -5359,8 +5345,8 @@
((imtr_guiInterface *)&sequence_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_markers)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->setRingOffset = NULL;
sequence_gui_interface_markers.isVector = sequence_gui_markers_is_vector;
sequence_gui_interface_markers.getSize = sequence_gui_markers_get_size;
@@ -5701,8 +5687,8 @@
((imtr_guiInterface *)&sequence_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_score)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_score)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->setRingOffset = NULL;
sequence_gui_interface_score.isVector = sequence_gui_score_is_vector;
sequence_gui_interface_score.getSize = sequence_gui_score_get_size;
@@ -6246,8 +6232,8 @@
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->setRingOffset = NULL;
sequence_gui_interface_matrix.getMatrixConfig = sequence_gui_matrix_get_matrix_config;
@@ -6633,8 +6619,8 @@
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->setRingOffset = NULL;
sequence_gui_interface_sonogram.getLength = sequence_gui_sonogram_get_length;
sequence_gui_interface_sonogram.getSpectrumSize = sequence_gui_sonogram_get_spectrum_size;
@@ -7047,8 +7033,8 @@
((imtr_guiInterface *)&sequence_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&sequence_gui_interface_traces)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&sequence_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->getRing = NULL;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->setRingOffset = NULL;
sequence_gui_interface_traces.isVector = sequence_gui_traces_is_vector;
sequence_gui_interface_traces.isTimeTagged = sequence_gui_traces_is_time_tagged;
@@ -7334,8 +7320,8 @@
((imtr_guiInterface *)&track_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_bpf)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->setRingOffset = NULL;
track_gui_interface_bpf.getSize = track_gui_bpf_get_size;
track_gui_interface_bpf.getPoint = track_gui_bpf_get_point;
@@ -7692,8 +7678,8 @@
((imtr_guiInterface *)&track_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_sonogram)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->setRingOffset = NULL;
track_gui_interface_sonogram.getLength = track_gui_sonogram_get_length;
track_gui_interface_sonogram.getSpectrumSize = track_gui_sonogram_get_spectrum_size;
@@ -8091,8 +8077,8 @@
((imtr_guiInterface *)&track_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_traces)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->setRingOffset = NULL;
track_gui_interface_traces.isVector = track_gui_traces_is_vector;
track_gui_interface_traces.isTimeTagged = track_gui_traces_is_time_tagged;
@@ -8387,8 +8373,8 @@
((imtr_guiInterface *)&track_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_score)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_score)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_score)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_score)->setRingOffset = NULL;
track_gui_interface_score.isVector = track_gui_score_is_vector;
track_gui_interface_score.getSize = track_gui_score_get_size;
@@ -9113,8 +9099,8 @@
((imtr_guiInterface *)&track_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_markers)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->setRingOffset = NULL;
track_gui_interface_markers.isVector = track_gui_markers_is_vector;
track_gui_interface_markers.getSize = track_gui_markers_get_size;
@@ -9641,8 +9627,8 @@
((imtr_guiInterface *)&track_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&track_gui_interface_matrix)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&track_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->getRing = NULL;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->setRingOffset = NULL;
track_gui_interface_matrix.getMatrixConfig = track_gui_matrix_get_matrix_config;
track_gui_interface_matrix.getRows = track_gui_matrix_get_rows;
@@ -10720,8 +10706,8 @@
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getBufferIndex = fts_get_buffer_index_default;
- ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getRing = fts_get_ring;
- ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->setRingOffset = fts_set_ring_offset;
+ ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getRing = NULL;
+ ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->setRingOffset = NULL;
mat_gui_interface_scatterplot.getSize = mat_gui_scatterplot_get_size;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-22 14:27:14
|
Revision: 3749
http://sourceforge.net/p/ftm/code/3749
Author: borghesi
Date: 2020-07-22 14:27:12 +0000 (Wed, 22 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/ftmlib/functions.c
Modified: trunk/ftm/ftmlib/functions.c
===================================================================
--- trunk/ftm/ftmlib/functions.c 2020-07-22 11:09:12 UTC (rev 3748)
+++ trunk/ftm/ftmlib/functions.c 2020-07-22 14:27:12 UTC (rev 3749)
@@ -978,6 +978,7 @@
_function_numcores (fts_object_t *o, fts_symbol_t s, int ac, const fts_atom_t *at, fts_atom_t *ret)
{
// todo: #ifdef HAVE_SYS_SYSCTL_H
+#ifndef WIN32
int mib[2];
int ncpu, status;
size_t intsize = sizeof(int);
@@ -992,6 +993,14 @@
fts_set_int(ret, ncpu);
return fts_ok;
}
+#else
+ SYSTEM_INFO sysinfo;
+ GetSystemInfo(&sysinfo);
+ int numCPU = sysinfo.dwNumberOfProcessors;
+
+ fts_set_int(ret, numCPU);
+ return fts_ok;
+#endif
// #endif
return fts_status_new(fts_new_symbol("can't get number of cores"));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-22 11:09:14
|
Revision: 3748
http://sourceforge.net/p/ftm/code/3748
Author: borghesi
Date: 2020-07-22 11:09:12 +0000 (Wed, 22 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-17 15:55:45 UTC (rev 3747)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-22 11:09:12 UTC (rev 3748)
@@ -1561,6 +1561,7 @@
if(value < vmin) vmin = value;
}
}
+ mat_unlock(self);
}
*max = vmax;
*min = vmin;
@@ -1617,6 +1618,7 @@
}
}
}
+ mat_unlock(self);
}
*max1 = vmax1;
@@ -1644,6 +1646,8 @@
fts_atom_t *val;
float value;
+ mat_lock(self);
+
for(i = 0; i < m; i ++)
{
val = mat_get_element(self, i, columnIndex);
@@ -1664,6 +1668,8 @@
if(meanOfSquare > squareOfmean)
vstddev = sqrt(meanOfSquare - squareOfmean);
+
+ mat_unlock(self);
}
*mean = vmean;
@@ -2243,6 +2249,7 @@
double vmin2 = 0.0;
float val;
+ fmat_lock(self);
float *ptr = fmat_get_ptr(self) + onset;
int size = fmat_get_m(self) * fmat_get_n(self);
@@ -2269,6 +2276,7 @@
if(val > vmax2 && val < vmax1) vmax2 = val;
}
}
+ fmat_unlock(self);
*max1 = vmax1;
*min1 = vmin1;
@@ -2499,6 +2507,7 @@
double vmin2 = 0.0;
float val;
+ fmat_lock(self);
float *ptr = fmat_get_ptr(self) + index;
int size = fmat_get_m(self) * fmat_get_n(self);
@@ -2525,6 +2534,7 @@
if(val > vmax2 && val < vmax1) vmax2 = val;
}
}
+ fmat_unlock(self);
*max1 = vmax1;
*min1 = vmin1;
@@ -3292,6 +3302,8 @@
double vmin2 = 0.0;
int size = self->m * self->n;
+ fmat_lock(self);
+
if(size > 0 && self->values != NULL)
{
int i;
@@ -3325,6 +3337,7 @@
}
}
}
+ fmat_unlock(self);
*max1 = vmax1;
*min1 = vmin1;
@@ -4181,7 +4194,6 @@
fvec_gui_wave_append(void *obj, void *context, int onset, int num, double startValue, double endValue)
{
fvec_t *self = (fvec_t *)obj;
- int i;
float *ptr;
int size, stride;
@@ -7743,6 +7755,9 @@
track_gui_traces_get_traces_num(void *obj, void *context)
{
sequence_t *sequence = track_get_events((track_t *)obj);
+
+ sequence_lock_read(sequence);
+
if(sequence_get_type(sequence) == fmat_class)
{
fmat_t *trace = NULL;
@@ -7752,6 +7767,8 @@
if(trace != NULL) return trace->m;
}
+ sequence_unlock(sequence);
+
return 1;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-17 15:55:46
|
Revision: 3747
http://sourceforge.net/p/ftm/code/3747
Author: borghesi
Date: 2020-07-17 15:55:45 +0000 (Fri, 17 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/util/install-mxo.sh
Modified: trunk/ftm/util/install-mxo.sh
===================================================================
--- trunk/ftm/util/install-mxo.sh 2020-07-17 15:55:18 UTC (rev 3746)
+++ trunk/ftm/util/install-mxo.sh 2020-07-17 15:55:45 UTC (rev 3747)
@@ -47,11 +47,11 @@
sf1=/Developer/Tools/SetFile
sf1=/Applications/Xcode.app/Contents/Developer/usr/bin/SetFile
-if [ -f $sf1 ]; then
- $sf1 -a B "$proddir"
-else
- $sf2 -a B "$proddir"
-fi
+# if [ -f $sf1 ]; then
+# $sf1 -a B "$proddir"
+#else
+# $sf2 -a B "$proddir"
+#fi
# remove target for clean install with current date and flags for directories
echo "[removing $installdir]"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-17 15:55:20
|
Revision: 3746
http://sourceforge.net/p/ftm/code/3746
Author: borghesi
Date: 2020-07-17 15:55:18 +0000 (Fri, 17 Jul 2020)
Log Message:
-----------
ftm.editor update
Modified Paths:
--------------
trunk/ftm/externals/max5/ftm.editor.cpp
Modified: trunk/ftm/externals/max5/ftm.editor.cpp
===================================================================
--- trunk/ftm/externals/max5/ftm.editor.cpp 2020-07-17 15:54:50 UTC (rev 3745)
+++ trunk/ftm/externals/max5/ftm.editor.cpp 2020-07-17 15:55:18 UTC (rev 3746)
@@ -124,6 +124,8 @@
double domain[2];
+ t_symbol *tool;
+
long align_view_bounds;
t_jrgba cursor_color;
@@ -1220,15 +1222,10 @@
}
else if(pname == fts_s_colormode)
{
- int i;
- IMTREDITOR_JUCE_NAMESPACE::StringArray modes = editorContainer->getEditor(idx)->getColorMode();
- *ac = modes.size() + 2;
+ *ac = 3;
+ fts_set_int(at, idx);
fts_set_symbol(at+1, pname);
- for(i = 0; i < modes.size(); i++)
- {
- const char *mode = modes[i].toUTF8();
- fts_set_symbol(at+2+i, fts_new_symbol(mode));
- }
+ fts_set_symbol(at+2, getSymbolFromString(editorContainer->getEditor(idx)->getColorMode()));
}
else if(pname == fts_s_colorpattern)
{
@@ -1550,6 +1547,30 @@
external->domain[1] = max;
}
+ static t_symbol *
+ getSymToolName(ImtrTypes::tool_name tool_name)
+ {
+ if(tool_name == ImtrTypes::edit_tool)
+ return fts_s_edit;
+ else if(tool_name == ImtrTypes::draw_tool)
+ return fts_s_draw;
+ else if(tool_name == ImtrTypes::scrollzoom_tool)
+ return fts_s_scrollzoom;
+ else if(tool_name == ImtrTypes::region_tool)
+ return fts_s_region;
+ else if(tool_name == ImtrTypes::cursor_tool)
+ return fts_s_cursor;
+ else if(tool_name == ImtrTypes::lock_tool)
+ return fts_s_lock;
+ else
+ return fts_s_edit;
+ }
+
+ void toolChanged(ImtrTypes::tool_name tool_name)
+ {
+ external->tool = getSymToolName(tool_name);
+ }
+
void resized()
{
IMTREDITOR_JUCE_NAMESPACE::Rectangle <int>rect = getBounds();
@@ -2080,13 +2101,8 @@
}
else if(prop == fts_s_colormode)
{
- IMTREDITOR_JUCE_NAMESPACE::StringArray modes;
if(ac > 0 && fts_is_symbol(at))
- {
- for(int i = 0; i< ac; i++)
- modes.add(IMTREDITOR_JUCE_NAMESPACE::String(fts_symbol_name(fts_get_symbol(at+i))));
- editorContainer->setViewColorMode(index, modes);
- }
+ editorContainer->setViewColorMode(index, IMTREDITOR_JUCE_NAMESPACE::String(fts_symbol_name(fts_get_symbol(at))));
}
else if(prop == fts_s_colorpattern)
{
@@ -6254,7 +6270,7 @@
if ((*ac) == 0 || (*av) == NULL)
{
//otherwise allocate memory
- if(propname != fts_s_visibleindexes && propname != fts_s_paramcols && propname != fts_s_colorpattern && propname != fts_s_depth && propname != fts_s_colormode)
+ if(propname != fts_s_visibleindexes && propname != fts_s_paramcols && propname != fts_s_colorpattern && propname != fts_s_depth)
{
if(propname == fts_s_fgcolor || propname == fts_s_bgcolor || propname == fts_s_stavecolor || propname == fts_s_header_fgcolor || propname == fts_s_header_bgcolor || propname == fts_s_header_bordercolor || propname == fts_s_grid_color || propname == fts_s_highlight_color)
*ac = 4;
@@ -6334,32 +6350,11 @@
{
if(have_editor)
{
- int i;
- IMTREDITOR_JUCE_NAMESPACE::StringArray colormodes = container->editorContainer->getEditor((int)self->view_inspector_track)->getColorMode();
-
- if ((*ac) == 0 || (*av) == NULL)
- {
- *ac = colormodes.size();
- if (!(*av = (t_atom *)getbytes(sizeof(t_atom) * (*ac))))
- {
- *ac = 0;
- return MAX_ERR_OUT_OF_MEM;
- }
- }
-
- for(i = 0; i < colormodes.size(); i++)
- fts_set_symbol((*av) + i, container->getSymbolFromString(colormodes[i]));
+ IMTREDITOR_JUCE_NAMESPACE::String colormode = container->editorContainer->getEditor((int)self->view_inspector_track)->getColorMode();
+ fts_set_symbol((*av), container->getSymbolFromString(colormode));
}
else
- {
- *ac = 1;
- if(!(*av = (t_atom *)getbytes(sizeof(t_atom) * (*ac))))
- {
- *ac = 0;
- return MAX_ERR_OUT_OF_MEM;
- }
fts_set_symbol((*av), fts_s_empty_string);
- }
}
else if(propname == fts_s_colorpattern)
{
@@ -7314,7 +7309,7 @@
self->domainruler_visible = 0;
self->domainruler_grid = 0;
self->domainruler_position = 0;
- self->domainruler_size = ImtrTypes::RULER_DEFAULT_SIZE;
+ self->domainruler_size = ImtrTypes::DOMAINRULER_DEFAULT_SIZE;
self->domainruler_unit = ImtrTypes::milliseconds_unit;
self->domainruler_bgcolor.red = 1.0f; self->domainruler_bgcolor.green = 1.0f;
self->domainruler_bgcolor.blue = 1.0f; self->domainruler_bgcolor.alpha = 1.0;
@@ -7351,6 +7346,8 @@
self->n_args = 0;
+ self->tool = fts_s_edit;
+
self->clock = clock_new(self, (method)ftmeditor_polling);
self->clock_delay = DEF_CLOCK_DELAY;
self->reboundsClock = clock_new(self, (method)reboundsClockCallback);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-17 15:54:52
|
Revision: 3745
http://sourceforge.net/p/ftm/code/3745
Author: borghesi
Date: 2020-07-17 15:54:50 +0000 (Fri, 17 Jul 2020)
Log Message:
-----------
ftm.editor update
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-17 15:53:32 UTC (rev 3744)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2020-07-17 15:54:50 UTC (rev 3745)
@@ -692,6 +692,8 @@
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
bpf_gui_interface_matrix.getMatrixConfig = bpf_gui_matrix_get_matrix_config;
bpf_gui_interface_matrix.getRows = bpf_gui_matrix_get_rows;
@@ -956,6 +958,8 @@
((imtr_guiInterface *)&dict_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
dict_gui_interface_matrix.getMatrixConfig = dict_gui_matrix_get_matrix_config;
dict_gui_interface_matrix.getRows = dict_gui_matrix_get_rows;
@@ -1412,6 +1416,8 @@
((imtr_guiInterface *)&mat_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
mat_gui_interface_markers.isVector = mat_gui_markers_is_vector;
mat_gui_interface_markers.getSize = mat_gui_markers_get_size;
@@ -1485,6 +1491,14 @@
return duration;
}
+static void
+mat_gui_interface_score_get_column_indexes(void *obj, void *context, const char *colorColName, int *colorColIndex)
+{
+ mat_t *self = (mat_t *)obj;
+ fts_schema_t *colschema = mat_get_schema(self, 2);
+ if(colschema != NULL && fts_schema_get_size(colschema) > 0)
+ *colorColIndex = fts_schema_get_index(colschema, fts_new_symbol(colorColName));
+}
static void *
mat_gui_score_get_by_index(void *obj, void *context, int index, double *time, double *pitch, double *duration, double *color, int colorColumnIndex)
@@ -1522,6 +1536,147 @@
return NULL;
}
+static void
+mat_gui_score_get_minmax_by_column(void *obj, void *context, double *min, double *max, int columnIndex)
+{
+ mat_t *self = (mat_t *)obj;
+ int m = mat_get_m(self);
+ int n = mat_get_n(self);
+ double vmax = InitMax;
+ double vmin = InitMin;
+
+ if(m > 0 && n > 0 && columnIndex < n)
+ {
+ mat_lock(self);
+ int i;
+ fts_atom_t *val;
+ float value;
+ for(i = 0; i < m; i ++)
+ {
+ val = mat_get_element(self, i, columnIndex);
+ if(fts_is_number(val))
+ {
+ value = fts_get_number_float(val);
+ if(value > vmax) vmax = value;
+ if(value < vmin) vmin = value;
+ }
+ }
+ }
+ *max = vmax;
+ *min = vmin;
+}
+
+static void
+mat_gui_score_get_two_minmax_by_column(void *obj, void *context, double *min1, double *max1, double *min2, double *max2, int columnIndex)
+{
+ mat_t *self = (mat_t *)obj;
+ int m = mat_get_m(self);
+ int n = mat_get_n(self);
+ double vmax1 = 0.0;
+ double vmin1 = 0.0;
+ double vmax2 = 0.0;
+ double vmin2 = 0.0;
+
+ if(m > 0 && n > 0 && columnIndex < n)
+ {
+ int i;
+ fts_atom_t *val;
+ float value;
+
+
+ vmax2 = InitMax;
+ vmax1 = vmax2;
+ vmin2 = InitMin;
+ vmin1 = vmin2;
+
+ mat_lock(self);
+
+ for(i = 0; i < m; i ++)
+ {
+ val = mat_get_element(self, i, columnIndex);
+ if(fts_is_number(val))
+ {
+ value = fts_get_number_float(val);
+ if(notInfNorNaN(value))
+ {
+ if(value > vmax2) vmax2 = value;
+ if(value < vmin2) vmin2 = value;
+ }
+ }
+ }
+ for(i = 0; i < m; i ++)
+ {
+ val = mat_get_element(self, i, columnIndex);
+ if(fts_is_number(val))
+ {
+ value = fts_get_number_float(val);
+ if(notInfNorNaN(value))
+ {
+ if(value > vmax1 && value < vmax2) vmax1 = value;
+ if(value < vmin1 && value > vmin2) vmin1 = value;
+ }
+ }
+ }
+ }
+
+ *max1 = vmax1;
+ *min1 = vmin1;
+ *max2 = vmax2;
+ *min2 = vmin2;
+}
+
+static void
+mat_gui_score_get_mean_stddev_by_column(void *obj, void *context, double *mean, double *stddev, int columnIndex)
+{
+ mat_t *self = (mat_t *)obj;
+ int m = mat_get_m(self);
+ int n = mat_get_n(self);
+
+ double vmean = 0.0;
+ double vstddev = 0.0;
+
+ if(m > 0 && n > 0 && columnIndex < n)
+ {
+ double meanOfSquare = 0.0;
+ double squareOfmean = 0.0;
+ double norm = 1.0 / (double)m;
+ int i;
+ fts_atom_t *val;
+ float value;
+
+ for(i = 0; i < m; i ++)
+ {
+ val = mat_get_element(self, i, columnIndex);
+ if(fts_is_number(val))
+ {
+ value = fts_get_number_float(val);
+ if(notInfNorNaN(value))
+ {
+ vmean += value;
+ meanOfSquare += value * value;
+ }
+ }
+ }
+
+ vmean *= norm;
+ meanOfSquare *= norm;
+ squareOfmean = vmean * vmean;
+
+ if(meanOfSquare > squareOfmean)
+ vstddev = sqrt(meanOfSquare - squareOfmean);
+ }
+
+ *mean = vmean;
+ *stddev = vstddev;
+}
+
+static int
+mat_gui_score_get_max_num_params(void *obj, void *context)
+{
+ mat_t *self = (mat_t *)obj;
+ return self->n;
+}
+
static void *
mat_gui_score_add(void *obj, void *context, double time, double pitch, double duration, int *ret_index)
{
@@ -1676,10 +1831,13 @@
((imtr_guiInterface *)&mat_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->setRingOffset = fts_set_ring_offset;
mat_gui_interface_score.isVector = mat_gui_score_is_vector;
mat_gui_interface_score.getSize = mat_gui_score_get_size;
mat_gui_interface_score.getDuration = mat_gui_score_get_duration;
+ mat_gui_interface_score.getColumnIndexes = mat_gui_interface_score_get_column_indexes;
mat_gui_interface_score.move = mat_gui_score_move;
mat_gui_interface_score.setDuration = mat_gui_score_set_duration;
mat_gui_interface_score.remove = mat_gui_score_remove;
@@ -1689,6 +1847,10 @@
mat_gui_interface_score.getPrevious = NULL;
mat_gui_interface_score.getValues = NULL;
mat_gui_interface_score.getByIndex = mat_gui_score_get_by_index;
+ mat_gui_interface_score.getMinMaxByColumn = mat_gui_score_get_minmax_by_column;
+ mat_gui_interface_score.getTwoMinMaxByColumn = mat_gui_score_get_two_minmax_by_column;
+ mat_gui_interface_score.getMeanStdDevByColumn = mat_gui_score_get_mean_stddev_by_column;
+ mat_gui_interface_score.getMaxNumParams = mat_gui_score_get_max_num_params;
mat_gui_interface_score.setPitch = mat_gui_score_set_pitch;
fts_class_instantiate(mat_class);
@@ -1930,6 +2092,8 @@
((imtr_guiInterface *)&mat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
mat_gui_interface_matrix.getMatrixConfig = mat_gui_matrix_get_matrix_config;
mat_gui_interface_matrix.getRows = mat_gui_matrix_get_rows;
@@ -2521,6 +2685,12 @@
return 1;
}
+static int
+fmat_gui_sonogram_is_timetagged(void *obj, void *context)
+{
+ return 0;
+}
+
static void
fmat_gui_sonogram_get_min_max(void *obj, void *context, int rangeStartIndex, int rangeSize, double *min, double *max)
{
@@ -2659,6 +2829,8 @@
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_sonogram.getLength = fmat_gui_sonogram_get_length;
fmat_gui_interface_sonogram.getSpectrumSize = fmat_gui_sonogram_get_spectrum_size;
@@ -2666,6 +2838,7 @@
fmat_gui_interface_sonogram.getValues = fmat_gui_sonogram_get_values;
fmat_gui_interface_sonogram.releaseValues = fmat_gui_sonogram_release_values;
fmat_gui_interface_sonogram.isVector = fmat_gui_sonogram_is_vector;
+ fmat_gui_interface_sonogram.isTimeTagged = fmat_gui_sonogram_is_timetagged;
fmat_gui_interface_sonogram.getMinMax = fmat_gui_sonogram_get_min_max;
fmat_gui_interface_sonogram.getTwoMinMax = fmat_gui_sonogram_get_two_min_max;
fmat_gui_interface_sonogram.getMeanStdDev = fmat_gui_sonogram_get_mean_stddev;
@@ -2718,6 +2891,18 @@
return self->m;
}
+static int
+fmat_gui_traces_get_max_num_params(void *obj, void *context)
+{
+ fmat_t *self = (fmat_t *)obj;
+ int maxNumParams = 0;
+ fmat_lock(self);
+ maxNumParams = fmat_get_n(self);
+ fmat_unlock(self);
+
+ return maxNumParams;
+}
+
static void
fmat_gui_traces_get_column_indexes(void *obj, void *context, const char *valueColName, const char *colorColName, const char *thicknessColName,
int *valueColIndex, int *colorColIndex, int *thicknessColIndex, int *indexColIndex, void **readHash, void **writeHash)
@@ -2810,6 +2995,34 @@
*max = color_max;
}
+static void
+fmat_gui_traces_get_minmax_by_column(void *obj, void *context, double *min, double *max, int columnIndex)
+{
+ fmat_t *self = (fmat_t *)obj;
+ float vmin = InitMax;
+ float vmax = InitMin;
+
+ if(columnIndex >= 0 && self->n > columnIndex)
+ {
+ float *ptr = fmat_lock(self);
+ int stride = fmat_get_n(self);
+ float value;
+ int i;
+
+ vmin = ptr[columnIndex];
+ vmax = ptr[columnIndex];
+ for(i = 0; i < self->m; i ++)
+ {
+ value = ptr[(i)*stride + columnIndex];
+ if(value < vmin) vmin = value;
+ if(value > vmax) vmax = value;
+ }
+ fmat_unlock(self);
+ }
+ *min = vmin;
+ *max = vmax;
+}
+
static double
fmat_gui_traces_get_duration(void *obj, void *context)
{
@@ -2967,10 +3180,13 @@
((imtr_guiInterface *)&fmat_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_traces.isVector = fmat_gui_traces_is_vector;
fmat_gui_interface_traces.isTimeTagged = fmat_gui_traces_is_time_tagged;
fmat_gui_interface_traces.getLength = fmat_gui_traces_get_length;
+ fmat_gui_interface_traces.getMaxNumParams = fmat_gui_traces_get_max_num_params;
fmat_gui_interface_traces.getTracesNum = fmat_gui_traces_get_traces_num;
fmat_gui_interface_traces.getColumnIndexes = fmat_gui_traces_get_column_indexes;
fmat_gui_interface_traces.getValueRange = fmat_gui_traces_get_value_range;
@@ -2981,6 +3197,7 @@
fmat_gui_interface_traces.setTrace = fmat_gui_traces_set_trace;
fmat_gui_interface_traces.getPointer = fmat_gui_traces_get_ptr;
fmat_gui_interface_traces.releasePointer = fmat_gui_traces_release_ptr;
+ fmat_gui_interface_traces.getMinMaxByColumn = fmat_gui_traces_get_minmax_by_column;
fmat_gui_interface_traces.getByTime = NULL;
fmat_gui_interface_traces.getFirst = NULL;
fmat_gui_interface_traces.getNext = NULL;
@@ -3166,6 +3383,8 @@
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_pixels.getLength = fmat_gui_pixels_get_length;
fmat_gui_interface_pixels.getSize = fmat_gui_pixels_get_size;
@@ -3735,6 +3954,8 @@
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_matrix.getMatrixConfig = fmat_gui_matrix_get_matrix_config;
fmat_gui_interface_matrix.getRows = fmat_gui_matrix_get_rows;
@@ -3901,6 +4122,22 @@
fts_object_changed((fts_object_t *)self->fmat);
}
+static float
+fvec_gui_wave_get(void *obj, void *context, int onset, int index)
+{
+ fvec_t *self = (fvec_t *)obj;
+ float *ptr;
+ int size, stride;
+ float value = 0.0;
+
+ fvec_vector_lock(self, &ptr, &size, &stride);
+
+ if(index < size)
+ value = ptr[index*stride];
+
+ return value;
+}
+
static void
fvec_gui_wave_shift_data(void *obj, void *context, int onset, int index, int shiftSize)
{
@@ -3940,7 +4177,23 @@
fts_object_changed((fts_object_t *)self->fmat);
}
+static void
+fvec_gui_wave_append(void *obj, void *context, int onset, int num, double startValue, double endValue)
+{
+ fvec_t *self = (fvec_t *)obj;
+ int i;
+ float *ptr;
+ int size, stride;
+
+ fvec_vector_lock(self, &ptr, &size, &stride);
+
+ //if(mubuTrack_append(track, num) > 0)
+ // fvec_gui_wave_interpolate(obj, context, onset, oldSize, size+num, startValue, endValue);
+
+ fvec_unlock(self);
+}
+
static void
fvec_gui_fvec_install(void)
{
@@ -3966,8 +4219,10 @@
fvec_gui_interface_fvec.interpolate = fvec_gui_wave_interpolate;
fvec_gui_interface_fvec.increment = fvec_gui_wave_increment;
fvec_gui_interface_fvec.set = fvec_gui_wave_set;
+ fvec_gui_interface_fvec.get = fvec_gui_wave_get;
fvec_gui_interface_fvec.shiftData = fvec_gui_wave_shift_data;
fvec_gui_interface_fvec.deleteInterval = fvec_gui_wave_delete_interval;
+ fvec_gui_interface_fvec.append = fvec_gui_wave_append;
fts_class_instantiate(fvec_class);
fts_class_gui_interface(fvec_class, fts_s_fvec, &fvec_gui_interface_fvec);
@@ -3994,11 +4249,14 @@
fvec_gui_interface_wave.getPointer = fvec_gui_wave_get_ptr;
fvec_gui_interface_wave.releasePointer = fvec_gui_wave_release_ptr;
fvec_gui_interface_wave.getMinMaxMean = fvec_gui_wave_get_min_max_mean;
+ fvec_gui_interface_wave.getTwoMinMax = fvec_gui_wave_get_two_min_max;
fvec_gui_interface_wave.interpolate = fvec_gui_wave_interpolate;
fvec_gui_interface_wave.increment = fvec_gui_wave_increment;
fvec_gui_interface_wave.set = fvec_gui_wave_set;
+ fvec_gui_interface_wave.get = fvec_gui_wave_get;
fvec_gui_interface_wave.shiftData = fvec_gui_wave_shift_data;
fvec_gui_interface_wave.deleteInterval = fvec_gui_wave_delete_interval;
+ fvec_gui_interface_wave.append = fvec_gui_wave_append;
fts_class_instantiate(fvec_class);
fts_class_gui_interface(fvec_class, fts_s_wave, &fvec_gui_interface_wave);
@@ -4102,6 +4360,8 @@
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
fvec_gui_interface_matrix.getMatrixConfig = fvec_gui_matrix_get_matrix_config;
fvec_gui_interface_matrix.getRows = fvec_gui_matrix_get_rows;
@@ -5087,6 +5347,8 @@
((imtr_guiInterface *)&sequence_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
sequence_gui_interface_markers.isVector = sequence_gui_markers_is_vector;
sequence_gui_interface_markers.getSize = sequence_gui_markers_get_size;
@@ -5139,6 +5401,12 @@
return sequence_get_total_duration((sequence_t *)obj);
}
+static void
+sequence_gui_interface_score_get_column_indexes(void *obj, void *context, const char *colorColName, int *colorColIndex)
+{
+ *colorColIndex = -1;
+}
+
static void *
sequence_gui_score_get_first(void *obj, void *context, double *time, double *pitch, double *duration)
{
@@ -5371,6 +5639,30 @@
sequence_unlock(sequence);
}
+static int
+sequence_gui_score_get_max_num_params(void *obj, void *context)
+{
+ return 0;
+}
+
+static void
+sequence_gui_score_get_minmax_by_column(void *obj, void *context, double *min, double *max, int columnIndex)
+{
+ *min = *max = 0;
+}
+
+static void
+sequence_gui_score_get_two_minmax_by_column(void *obj, void *context, double *min1, double *max1, double *min2, double *max2, int columnIndex)
+{
+ *min1 = *max1 = *min2 = *max2 = 0;
+}
+
+static void
+sequence_gui_score_get_mean_stddev_by_column(void *obj, void *context, double *mean, double *stddev, int columnIndex)
+{
+ *mean = 0.0;
+ *stddev = 0.5;
+}
static void
sequence_gui_score_set_pitch(void *obj, void *context, void *evt, int index, double pitch)
{
@@ -5397,10 +5689,13 @@
((imtr_guiInterface *)&sequence_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->setRingOffset = fts_set_ring_offset;
sequence_gui_interface_score.isVector = sequence_gui_score_is_vector;
sequence_gui_interface_score.getSize = sequence_gui_score_get_size;
sequence_gui_interface_score.getDuration = sequence_gui_score_get_duration;
+ sequence_gui_interface_score.getColumnIndexes = sequence_gui_interface_score_get_column_indexes;
sequence_gui_interface_score.move = sequence_gui_score_move;
sequence_gui_interface_score.setDuration = sequence_gui_score_set_duration;
sequence_gui_interface_score.remove = sequence_gui_score_remove;
@@ -5410,6 +5705,10 @@
sequence_gui_interface_score.getPrevious = sequence_gui_score_get_previous;
sequence_gui_interface_score.getValues = sequence_gui_score_get_values;
sequence_gui_interface_score.getByIndex = sequence_gui_score_get_by_index;
+ sequence_gui_interface_score.getMinMaxByColumn = sequence_gui_score_get_minmax_by_column;
+ sequence_gui_interface_score.getTwoMinMaxByColumn = sequence_gui_score_get_two_minmax_by_column;
+ sequence_gui_interface_score.getMeanStdDevByColumn = sequence_gui_score_get_mean_stddev_by_column;
+ sequence_gui_interface_score.getMaxNumParams = sequence_gui_score_get_max_num_params;
sequence_gui_interface_score.setPitch = sequence_gui_score_set_pitch;
fts_class_instantiate(sequence_class);
@@ -5935,7 +6234,10 @@
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
+
sequence_gui_interface_matrix.getMatrixConfig = sequence_gui_matrix_get_matrix_config;
sequence_gui_interface_matrix.getRows = sequence_gui_matrix_get_rows;
sequence_gui_interface_matrix.getCols = sequence_gui_matrix_get_cols;
@@ -6190,6 +6492,12 @@
return 0;
}
+static int
+sequence_gui_sonogram_is_timetagged(void *obj, void *context)
+{
+ return 1;
+}
+
static void *
sequence_gui_sonogram_get_first(void *obj, void *context, double *time, int *rows, int *cols, float **ptr)
{
@@ -6313,6 +6621,8 @@
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
sequence_gui_interface_sonogram.getLength = sequence_gui_sonogram_get_length;
sequence_gui_interface_sonogram.getSpectrumSize = sequence_gui_sonogram_get_spectrum_size;
@@ -6323,6 +6633,7 @@
sequence_gui_interface_sonogram.getValues = NULL;
sequence_gui_interface_sonogram.releaseValues = NULL;
sequence_gui_interface_sonogram.isVector = sequence_gui_sonogram_is_vector;
+ sequence_gui_interface_sonogram.isTimeTagged = sequence_gui_sonogram_is_timetagged;
sequence_gui_interface_sonogram.getFirst = sequence_gui_sonogram_get_first;
sequence_gui_interface_sonogram.getByTime = sequence_gui_sonogram_get_by_time;
sequence_gui_interface_sonogram.getNext = sequence_gui_sonogram_get_next;
@@ -6452,6 +6763,45 @@
*max = color_max;
}
+static void
+sequence_gui_traces_get_thickness_range(void *obj, void *context, int thicknessColumnIndex, double *min, double *max)
+{
+ sequence_t *sequence = (sequence_t *)obj;
+ float thick_min = 0.0;
+ float thick_max = 1.0;
+
+ sequence_lock_read(sequence);
+
+ if(sequence_get_type(sequence) == fmat_class)
+ {
+ fmat_t *trace = NULL;
+ event_t *evt = sequence_get_first(sequence);
+ float thickness;
+ if(evt != NULL && event_get_value(evt) != NULL)
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL && trace->n > 2)
+ {
+ thick_min = (trace->n > 1) ? fmat_get_element(trace, 0, 2) : 0.0;
+ thick_max = (trace->n > 1) ? fmat_get_element(trace, 0, 2) : 1.0;
+ }
+ while(evt != NULL)
+ {
+ if(evt != NULL && event_get_value(evt) != NULL)
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL && trace->n > 2)
+ {
+ thickness = fmat_get_element(trace, 0, 2);
+ if(thickness < thick_min) thick_min = thickness;
+ if(thickness > thick_max) thick_max = thickness;
+ }
+ evt = event_get_next(evt);
+ }
+ }
+ sequence_unlock(sequence);
+
+ *min = thick_min;
+ *max = thick_max;
+}
static double
sequence_gui_traces_get_duration(void *obj, void *context)
{
@@ -6475,6 +6825,30 @@
return 1;
}
+static int
+sequence_gui_traces_get_max_num_params(void *obj, void *context)
+{
+ sequence_t *sequence = (sequence_t *)obj;
+ int maxNumParams = 0;
+
+ sequence_lock_read(sequence);
+
+ if(sequence_get_type(sequence) == fmat_class)
+ {
+ fmat_t *trace = NULL;
+ event_t *evt = sequence_get_first(sequence);
+ if(evt != NULL && event_get_value(evt) != NULL)
+ {
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL)
+ maxNumParams = fmat_get_n(trace);
+ }
+ }
+ sequence_unlock(sequence);
+
+ return maxNumParams;
+}
+
static void
sequence_gui_traces_get_column_indexes(void *obj, void *context, const char *valueColName, const char *colorColName, const char *thicknessColName,
int *valueColIndex, int *colorColIndex, int *thicknessColIndex, int *indexColIndex, void **readHash, void **writeHash)
@@ -6484,6 +6858,29 @@
*thicknessColIndex = 2;
}
+static void
+sequence_gui_traces_get_minmax_by_column(void *obj, void *context, double *min, double *max, int columnIndex)
+{
+ switch(columnIndex)
+ {
+ default:
+ case 0:
+ {
+ int size = sequence_gui_traces_get_length(obj, context);
+ sequence_gui_traces_get_value_range(obj, context, 0, 2, 0, size, min, max);
+ break;
+ }
+ case 1:
+ {
+ sequence_gui_traces_get_color_range(obj, context, 1, min, max);
+ break;
+ }
+ case 2:
+ sequence_gui_traces_get_thickness_range(obj, context, 2, min, max);
+ break;
+ }
+}
+
static void *
sequence_gui_traces_get_by_time(void *obj, void *context, double the_time, double *time)
{
@@ -6638,10 +7035,13 @@
((imtr_guiInterface *)&sequence_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
sequence_gui_interface_traces.isVector = sequence_gui_traces_is_vector;
sequence_gui_interface_traces.isTimeTagged = sequence_gui_traces_is_time_tagged;
sequence_gui_interface_traces.getTracesNum = sequence_gui_traces_get_traces_num;
+ sequence_gui_interface_traces.getMaxNumParams = sequence_gui_traces_get_max_num_params;
sequence_gui_interface_traces.getColumnIndexes = sequence_gui_traces_get_column_indexes;
sequence_gui_interface_traces.getLength = sequence_gui_traces_get_length;
sequence_gui_interface_traces.getValueRange = sequence_gui_traces_get_value_range;
@@ -6648,9 +7048,11 @@
sequence_gui_interface_traces.getColorRange = sequence_gui_traces_get_color_range;
sequence_gui_interface_traces.getDuration = sequence_gui_traces_get_duration;
sequence_gui_interface_traces.getTrace = NULL;
+ sequence_gui_interface_traces.getTraceTime = NULL;
sequence_gui_interface_traces.setTrace = NULL;
sequence_gui_interface_traces.getPointer = NULL;
sequence_gui_interface_traces.releasePointer = NULL;
+ sequence_gui_interface_traces.getMinMaxByColumn = sequence_gui_traces_get_minmax_by_column;
sequence_gui_interface_traces.getByTime = sequence_gui_traces_get_by_time;
sequence_gui_interface_traces.getFirst = sequence_gui_traces_get_first;
sequence_gui_interface_traces.getNext = sequence_gui_traces_get_next;
@@ -6657,6 +7059,8 @@
sequence_gui_interface_traces.getPrev = sequence_gui_traces_get_prev;
sequence_gui_interface_traces.getTraceValues = sequence_gui_traces_get_trace_values;
sequence_gui_interface_traces.setTraceValues = sequence_gui_traces_set_trace_values;
+ sequence_gui_interface_traces.clearHashtable = NULL;
+ sequence_gui_interface_traces.releaseHashtable = NULL;
fts_class_instantiate(sequence_class);
fts_class_gui_interface(sequence_class, fts_s_traces, &sequence_gui_interface_traces);
@@ -6971,6 +7375,12 @@
return 0;
}
+static int
+track_gui_sonogram_is_timetagged(void *obj, void *context)
+{
+ return 1;
+}
+
static void
track_gui_sonogram_get_min_max(void *obj, void *context, int rangeStartIndex, int rangeSize, double *min, double *max)
{
@@ -7270,6 +7680,8 @@
((imtr_guiInterface *)&track_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->setRingOffset = fts_set_ring_offset;
track_gui_interface_sonogram.getLength = track_gui_sonogram_get_length;
track_gui_interface_sonogram.getSpectrumSize = track_gui_sonogram_get_spectrum_size;
@@ -7280,6 +7692,7 @@
track_gui_interface_sonogram.getValues = NULL;
track_gui_interface_sonogram.releaseValues = NULL;
track_gui_interface_sonogram.isVector = track_gui_sonogram_is_vector;
+ track_gui_interface_sonogram.isTimeTagged = track_gui_sonogram_is_timetagged;
track_gui_interface_sonogram.getFirst = track_gui_sonogram_get_first;
track_gui_interface_sonogram.getByTime = track_gui_sonogram_get_by_time;
track_gui_interface_sonogram.getNext = track_gui_sonogram_get_next;
@@ -7302,6 +7715,30 @@
return sequence_get_size(track_get_events((track_t *)obj));
}
+static int
+track_gui_traces_get_max_num_params(void *obj, void *context)
+{
+ sequence_t *sequence = track_get_events((track_t *)obj);
+ int maxNumParams = 0;
+
+ sequence_lock_read(sequence);
+
+ if(sequence_get_type(sequence) == fmat_class)
+ {
+ fmat_t *trace = NULL;
+ event_t *evt = sequence_get_first(sequence);
+ if(evt != NULL && event_get_value(evt) != NULL)
+ {
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL)
+ maxNumParams = fmat_get_n(trace);
+ }
+ }
+ sequence_unlock(sequence);
+
+ return maxNumParams;
+}
+
static int
track_gui_traces_get_traces_num(void *obj, void *context)
{
@@ -7399,6 +7836,46 @@
*max = color_max;
}
+static void
+track_gui_traces_get_thickness_range(void *obj, void *context, int thicknessColumnIndex, double *min, double *max)
+{
+ sequence_t *sequence = track_get_events((track_t *)obj);
+ float thick_min = 0.0;
+ float thick_max = 1.0;
+
+ sequence_lock_read(sequence);
+
+ if(sequence_get_type(sequence) == fmat_class)
+ {
+ fmat_t *trace = NULL;
+ event_t *evt = sequence_get_first(sequence);
+ float thickness;
+ if(evt != NULL && event_get_value(evt) != NULL)
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL && trace->n > 2)
+ {
+ thick_min = (trace->n > 1) ? fmat_get_element(trace, 0, 2) : 0.0;
+ thick_max = (trace->n > 1) ? fmat_get_element(trace, 0, 2) : 1.0;
+ }
+ while(evt != NULL)
+ {
+ if(evt != NULL && event_get_value(evt) != NULL)
+ trace = (fmat_t *)fts_get_object(event_get_value(evt));
+ if(trace != NULL && trace->n > 2)
+ {
+ thickness = fmat_get_element(trace, 0, 2);
+ if(thickness < thick_min) thick_min = thickness;
+ if(thickness > thick_max) thick_max = thickness;
+ }
+ evt = event_get_next(evt);
+ }
+ }
+ sequence_unlock(sequence);
+
+ *min = thick_min;
+ *max = thick_max;
+}
+
static void
track_gui_traces_get_column_indexes(void *obj, void *context, const char *valueColName, const char *colorColName, const char *thicknessColName,
int *valueColIndex, int *colorColIndex, int *thicknessColIndex, int *indexColIndex, void **readHash, void **writeHash)
@@ -7408,6 +7885,29 @@
*thicknessColIndex = 2;
}
+static void
+track_gui_traces_get_minmax_by_column(void *obj, void *context, double *min, double *max, int columnIndex)
+{
+ switch(columnIndex)
+ {
+ default:
+ case 0:
+ {
+ int size = sequence_gui_traces_get_length(obj, context);
+ track_gui_traces_get_value_range(obj, context, 0, 2, 0, size, min, max);
+ break;
+ }
+ case 1:
+ {
+ track_gui_traces_get_color_range(obj, context, 1, min, max);
+ break;
+ }
+ case 2:
+ track_gui_traces_get_thickness_range(obj, context, 2, min, max);
+ break;
+ }
+}
+
static double
track_gui_traces_get_duration(void *obj, void *context)
{
@@ -7574,10 +8074,13 @@
((imtr_guiInterface *)&track_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->setRingOffset = fts_set_ring_offset;
track_gui_interface_traces.isVector = track_gui_traces_is_vector;
track_gui_interface_traces.isTimeTagged = track_gui_traces_is_time_tagged;
track_gui_interface_traces.getLength = track_gui_traces_get_length;
+ track_gui_interface_traces.getMaxNumParams = track_gui_traces_get_max_num_params;
track_gui_interface_traces.getTracesNum = track_gui_traces_get_traces_num;
track_gui_interface_traces.getColumnIndexes = track_gui_traces_get_column_indexes;
track_gui_interface_traces.getValueRange = track_gui_traces_get_value_range;
@@ -7584,9 +8087,11 @@
track_gui_interface_traces.getColorRange = track_gui_traces_get_color_range;
track_gui_interface_traces.getDuration = track_gui_traces_get_duration;
track_gui_interface_traces.getTrace = NULL;
+ track_gui_interface_traces.getTraceTime = NULL;
track_gui_interface_traces.setTrace = NULL;
track_gui_interface_traces.getPointer = NULL;
track_gui_interface_traces.releasePointer = NULL;
+ track_gui_interface_traces.getMinMaxByColumn = track_gui_traces_get_minmax_by_column;
track_gui_interface_traces.getByTime = track_gui_traces_get_by_time;
track_gui_interface_traces.getFirst = track_gui_traces_get_first;
track_gui_interface_traces.getNext = track_gui_traces_get_next;
@@ -7593,6 +8098,8 @@
track_gui_interface_traces.getPrev = track_gui_traces_get_prev;
track_gui_interface_traces.getTraceValues = track_gui_traces_get_trace_values;
track_gui_interface_traces.setTraceValues = track_gui_traces_set_trace_values;
+ track_gui_interface_traces.clearHashtable = NULL;
+ track_gui_interface_traces.releaseHashtable = NULL;
fts_class_instantiate(track_class);
fts_class_gui_interface(track_class, fts_s_traces, &track_gui_interface_traces);
@@ -7780,6 +8287,12 @@
return (void *)evt;
}
+static void
+track_gui_interface_score_get_column_indexes(void *obj, void *context, const char *colorColName, int *colorColIndex)
+{
+ *colorColIndex = -1;
+}
+
static void
track_gui_score_move(void *obj, void *context, void *evt, int index, double time)
{
@@ -7857,10 +8370,13 @@
((imtr_guiInterface *)&track_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_score)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_score)->setRingOffset = fts_set_ring_offset;
track_gui_interface_score.isVector = track_gui_score_is_vector;
track_gui_interface_score.getSize = track_gui_score_get_size;
track_gui_interface_score.getDuration = track_gui_score_get_duration;
+ track_gui_interface_score.getColumnIndexes = track_gui_interface_score_get_column_indexes;
track_gui_interface_score.move = track_gui_score_move;
track_gui_interface_score.setDuration = track_gui_score_set_duration;
track_gui_interface_score.remove = track_gui_score_remove;
@@ -8580,6 +9096,8 @@
((imtr_guiInterface *)&track_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->setRingOffset = fts_set_ring_offset;
track_gui_interface_markers.isVector = track_gui_markers_is_vector;
track_gui_interface_markers.getSize = track_gui_markers_get_size;
@@ -9106,6 +9624,8 @@
((imtr_guiInterface *)&track_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->setRingOffset = fts_set_ring_offset;
track_gui_interface_matrix.getMatrixConfig = track_gui_matrix_get_matrix_config;
track_gui_interface_matrix.getRows = track_gui_matrix_get_rows;
@@ -10183,6 +10703,9 @@
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&mat_gui_interface_scatterplot)->setRingOffset = fts_set_ring_offset;
+
mat_gui_interface_scatterplot.getSize = mat_gui_scatterplot_get_size;
mat_gui_interface_scatterplot.getColumns = mat_gui_scatterplot_get_columns;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-17 15:53:35
|
Revision: 3744
http://sourceforge.net/p/ftm/code/3744
Author: borghesi
Date: 2020-07-17 15:53:32 +0000 (Fri, 17 Jul 2020)
Log Message:
-----------
Modified Paths:
--------------
trunk/ftm/build/max5/osx-macho/ftmexternals.xcodeproj/project.pbxproj
Modified: trunk/ftm/build/max5/osx-macho/ftmexternals.xcodeproj/project.pbxproj
===================================================================
--- trunk/ftm/build/max5/osx-macho/ftmexternals.xcodeproj/project.pbxproj 2020-07-17 15:52:58 UTC (rev 3743)
+++ trunk/ftm/build/max5/osx-macho/ftmexternals.xcodeproj/project.pbxproj 2020-07-17 15:53:32 UTC (rev 3744)
@@ -2883,7 +2883,8 @@
21195BA318800BF200EAB1FF /* Debug_harder */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
+ CLANG_CXX_LIBRARY = "libc++";
CLANG_LINK_OBJC_RUNTIME = NO;
CLANG_WARN_ENUM_CONVERSION = YES;
COMPONENTS_DIR = ../../../../components;
@@ -2929,9 +2930,10 @@
"$(SDIF_DIR)",
);
INFOPLIST_FILE = ftmexternal.plist;
+ JS_DIR = ../../../../components/js;
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"-framework",
@@ -3020,6 +3022,8 @@
21195BAD18800BF200EAB1FF /* Debug_harder */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
+ CLANG_CXX_LIBRARY = "libc++";
GCC_INPUT_FILETYPE = automatic;
GCC_PREPROCESSOR_DEFINITIONS = (
"IMTREDITOR_C_GUI_INTERFACE=1",
@@ -3069,15 +3073,16 @@
21195BB018800BF200EAB1FF /* Debug_harder */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"$(inherited)",
- "-framework",
- MaxJSRef,
+ ../../../../components/js/lib/libmozjs185.dylib,
);
PRODUCT_NAME = ftm.javascript;
};
@@ -3086,10 +3091,11 @@
21195BB118800BF200EAB1FF /* Debug_harder */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"-framework",
@@ -3297,6 +3303,8 @@
218B72340E80091000A7CEAD /* Debug_optimised */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
+ CLANG_CXX_LIBRARY = "libc++";
COMBINE_HIDPI_IMAGES = YES;
GCC_INPUT_FILETYPE = automatic;
GCC_PREPROCESSOR_DEFINITIONS = (
@@ -3475,16 +3483,17 @@
218B72490E80091000A7CEAD /* Debug_optimised */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"$(inherited)",
- "-framework",
- MaxJSRef,
+ ../../../../components/js/lib/libmozjs185.dylib,
);
PRODUCT_NAME = ftm.javascript;
};
@@ -3494,10 +3503,11 @@
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"-framework",
@@ -3593,7 +3603,8 @@
218B72540E80091000A7CEAD /* Debug_optimised */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
+ CLANG_CXX_LIBRARY = "libc++";
CLANG_LINK_OBJC_RUNTIME = NO;
CLANG_WARN_ENUM_CONVERSION = YES;
COMPONENTS_DIR = ../../../../components;
@@ -3637,9 +3648,10 @@
"$(SDIF_DIR)",
);
INFOPLIST_FILE = ftmexternal.plist;
+ JS_DIR = ../../../../components/js;
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"-framework",
@@ -3704,6 +3716,8 @@
3B1CA7E00C467B12005F0280 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
+ CLANG_CXX_LIBRARY = "libc++";
COMBINE_HIDPI_IMAGES = YES;
GCC_INPUT_FILETYPE = automatic;
GCC_PREPROCESSOR_DEFINITIONS = (
@@ -3740,6 +3754,8 @@
3B1CA7E10C467B12005F0280 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
+ CLANG_CXX_LIBRARY = "libc++";
COMBINE_HIDPI_IMAGES = YES;
GCC_INPUT_FILETYPE = automatic;
GCC_PREPROCESSOR_DEFINITIONS = (
@@ -4078,7 +4094,8 @@
3B5DEE230861C3ED00B9AEEA /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
+ CLANG_CXX_LIBRARY = "libc++";
CLANG_LINK_OBJC_RUNTIME = NO;
CLANG_WARN_ENUM_CONVERSION = YES;
COMPONENTS_DIR = ../../../../components;
@@ -4120,9 +4137,10 @@
"$(SDIF_DIR)",
);
INFOPLIST_FILE = ftmexternal.plist;
+ JS_DIR = ../../../../components/js;
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"-framework",
@@ -4148,6 +4166,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CLANG_CXX_LIBRARY = "libc++";
CLANG_LINK_OBJC_RUNTIME = NO;
CLANG_WARN_ENUM_CONVERSION = YES;
COMPONENTS_DIR = ../../../../components;
@@ -4196,9 +4215,10 @@
"$(SDIF_DIR)",
);
INFOPLIST_FILE = ftmexternal.plist;
+ JS_DIR = ../../../../components/js;
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"-framework",
@@ -4243,6 +4263,420 @@
};
name = Release;
};
+ 3BFD349324C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_LINK_OBJC_RUNTIME = NO;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CODE_SIGN_IDENTITY = "Developer ID Application: INST RECHER COORD ACOUST MUSICALE (3BD2P55TR2)";
+ CODE_SIGN_STYLE = Manual;
+ COMPONENTS_DIR = ../../../../components;
+ COMPONENT_LIBS = "$(SDIF_LIBS) $(SNDFILE_LIBS)";
+ COPYING_PRESERVES_HFS_DATA = YES;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_FLAGS = "_NDEBUG=1 NEBUG=1";
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ EXTERNALS_DIR = "../../../../../build-max5";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(FTM_FRAMEWORK_DIR)",
+ "$(MAXAPI_DIR)/**",
+ /Library/Frameworks,
+ );
+ FTM_FRAMEWORKS = "$(FTM_FRAMEWORK_DIR)/ftm.mxo/Contents/MacOS/ftm";
+ FTM_FRAMEWORK_DIR = "$(EXTERNALS_DIR)";
+ FTM_VERSION = 2.6;
+ GCC_AUTO_VECTORIZATION = YES;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_OPTIMIZATION_LEVEL = 3;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "$(MAXAPI_DIR)/max-includes/macho-prefix.pch";
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(DEBUG_FLAGS)",
+ "$(VERSION_MACROS)",
+ "IMTREDITOR_C_GUI_INTERFACE=1",
+ );
+ GCC_UNROLL_LOOPS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
+ GCC_WARN_CHECK_SWITCH_STATEMENTS = YES;
+ GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
+ GCC_WARN_SIGN_COMPARE = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNKNOWN_PRAGMAS = NO;
+ GCC_WARN_UNUSED_FUNCTION = NO;
+ GCC_WARN_UNUSED_PARAMETER = NO;
+ GCC_WARN_UNUSED_VALUE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ GENERATE_PKGINFO_FILE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(MAXAPI_DIR)/**",
+ "$(EXTERNALS_DIR)/ftm.mxo/Contents/Headers",
+ "$(SNDFILE_DIR)",
+ "$(JUCE_DIR)",
+ "$(SDIF_DIR)",
+ );
+ INFOPLIST_FILE = ftmexternal.plist;
+ JS_DIR = ../../../../components/js;
+ JUCE_DIR = "$(COMPONENTS_DIR)/juce";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
+ MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
+ OTHER_CODE_SIGN_FLAGS = "--timestamp";
+ OTHER_LDFLAGS = (
+ "-framework",
+ Carbon,
+ "-lmx",
+ "$(SYS_FRAMEWORKS)",
+ "$(MAX_FRAMEWORKS)",
+ "$(FTM_FRAMEWORKS)",
+ "$(COMPONENT_LIBS)",
+ );
+ PRODUCT_NAME = install;
+ SDIF_DIR = "$(COMPONENTS_DIR)/sdif";
+ SDIF_LIBS = "$(SDIF_DIR)/macos-fat/libsdif.a";
+ SECTORDER_FLAGS = "";
+ SNDFILE_DIR = "$(COMPONENTS_DIR)/sndfile";
+ SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
+ SYS_FRAMEWORKS = "-framework Accelerate";
+ WARNING_CFLAGS = "";
+ WRAPPER_EXTENSION = mxo;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349424C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ MACOSX_DEPLOYMENT_TARGET = "";
+ PRODUCT_NAME = all;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349524C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = basic;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349624C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = max;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349724C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = additional;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349824C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = install;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349924C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.startup;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349A24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.object;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349B24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = ftm.mess;
+ SDKROOT = macosx;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349C24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.vecdisplay;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349D24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = automatic;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "IMTREDITOR_C_GUI_INTERFACE=1",
+ "DISABLE_JUCE_NAMESPACE=1",
+ "_NDEBUG=1",
+ "NDEBUG=1",
+ "IMTREDITOR_DONT_USE_LOCAL_JUCEINCLUDES=1",
+ "JUCER_XCODE_MAC_F6D2F4CF=1",
+ );
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "$(COMPONENTS_DIR)/juce",
+ "$(COMPONENTS_DIR)/juce/modules",
+ "$(COMPONENTS_DIR)/ImtrEditor/**",
+ );
+ OTHER_LDFLAGS = (
+ "${inherited}",
+ "-framework",
+ Cocoa,
+ "-framework",
+ IOKit,
+ "-framework",
+ QuartzCore,
+ "-framework",
+ WebKit,
+ "-framework",
+ OpenGL,
+ );
+ PRODUCT_NAME = ftm.editor;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349E24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.absargs;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349F24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.buffer;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A024C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
+ COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
+ );
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ ../../../../components/js/lib/libmozjs185.dylib,
+ );
+ PRODUCT_NAME = ftm.javascript;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A124C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
+ );
+ OTHER_LDFLAGS = (
+ "-framework",
+ Carbon,
+ "-lmx",
+ "-framework",
+ MaxAPI,
+ "-framework",
+ MaxAudioAPI,
+ );
+ PRODUCT_NAME = ftmjs;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A224C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "$(MAX_FRAMEWORK_DIR)/JitterAPI.framework/Headers",
+ );
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ "-framework",
+ JitterAPI,
+ );
+ PRODUCT_NAME = ftm.jitter;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A324C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.clone;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A424C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.copy;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A524C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.inter;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A624C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.iter;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A724C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.list;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A824C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.midiparse;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34A924C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.midiunparse;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AA24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.play;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AB24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.print;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AC24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.record;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AD24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.schedule;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AE24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.tween;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34AF24C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.value;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34B024C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.sdif.info;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34B124C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.sdif.write;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34B224C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ "-lsqlite3",
+ );
+ PRODUCT_NAME = ftm.sqlite;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34B324C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ PRODUCT_NAME = ftm.guilistener;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD34B424C1F61800A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ PRODUCT_NAME = "ftm.editor DOC";
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
3BFEBB460AB172450026E8D4 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -4263,10 +4697,11 @@
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"-framework",
@@ -4285,10 +4720,11 @@
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"-framework",
@@ -4330,16 +4766,17 @@
5CCF9CF20AAB84E900DD7255 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"$(inherited)",
- "-framework",
- MaxJSRef,
+ ../../../../components/js/lib/debug/libmozjs185.dylib,
);
PRODUCT_NAME = ftm.javascript;
};
@@ -4348,16 +4785,17 @@
5CCF9CF30AAB84E900DD7255 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
+ GCC_INPUT_FILETYPE = sourcecode.cpp.cpp;
HEADER_SEARCH_PATHS = (
"$(inherited)",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers",
- "$(MAX_FRAMEWORK_DIR)/MaxJSRef.framework/Headers/nspr",
+ ../../../../components/js/src,
+ ../../../../components/js/nspr,
);
OTHER_LDFLAGS = (
"$(inherited)",
- "-framework",
- MaxJSRef,
+ ../../../../components/js/lib/libmozjs185.dylib,
);
PRODUCT_NAME = ftm.javascript;
};
@@ -4465,6 +4903,7 @@
21195BC218800BF200EAB1FF /* Debug_harder */,
218B724E0E80091000A7CEAD /* Debug_optimised */,
211ADFE00A7902A2007B20AA /* Release */,
+ 3BFD34B224C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4476,6 +4915,7 @@
21195BC118800BF200EAB1FF /* Debug_harder */,
218B724D0E80091000A7CEAD /* Debug_optimised */,
2195DE0809A24A63007DEFAF /* Release */,
+ 3BFD34B124C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4487,6 +4927,7 @@
21195BAA18800BF200EAB1FF /* Debug_harder */,
3B198EB60F8A0E3500F53450 /* Debug_optimised */,
3B198EB70F8A0E3500F53450 /* Release */,
+ 3BFD349A24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4498,6 +4939,7 @@
21195BAD18800BF200EAB1FF /* Debug_harder */,
218B72340E80091000A7CEAD /* Debug_optimised */,
3B1CA7E10C467B12005F0280 /* Release */,
+ 3BFD349D24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4509,6 +4951,7 @@
21195BC318800BF200EAB1FF /* Debug_harder */,
218B723A0E80091000A7CEAD /* Debug_optimised */,
3B3E8CAC0AB81AB100EE3FAB /* Release */,
+ 3BFD34B324C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4520,6 +4963,7 @@
21195BAB18800BF200EAB1FF /* Debug_harder */,
218B72320E80091000A7CEAD /* Debug_optimised */,
3B5DEDD80861C3ED00B9AEEA /* Release */,
+ 3BFD349B24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4531,6 +4975,7 @@
21195BAC18800BF200EAB1FF /* Debug_harder */,
218B72330E80091000A7CEAD /* Debug_optimised */,
3B5DEDDC0861C3ED00B9AEEA /* Release */,
+ 3BFD349C24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4542,6 +4987,7 @@
21195BB318800BF200EAB1FF /* Debug_harder */,
218B72380E80091000A7CEAD /* Debug_optimised */,
3B5DEDE00861C3ED00B9AEEA /* Release */,
+ 3BFD34A324C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4553,6 +4999,7 @@
21195BB418800BF200EAB1FF /* Debug_harder */,
218B72390E80091000A7CEAD /* Debug_optimised */,
3B5DEDE40861C3ED00B9AEEA /* Release */,
+ 3BFD34A424C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4564,6 +5011,7 @@
21195BB518800BF200EAB1FF /* Debug_harder */,
218B723B0E80091000A7CEAD /* Debug_optimised */,
3B5DEDE80861C3ED00B9AEEA /* Release */,
+ 3BFD34A524C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4575,6 +5023,7 @@
21195BB618800BF200EAB1FF /* Debug_harder */,
218B723C0E80091000A7CEAD /* Debug_optimised */,
3B5DEDEC0861C3ED00B9AEEA /* Release */,
+ 3BFD34A624C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4586,6 +5035,7 @@
21195BB718800BF200EAB1FF /* Debug_harder */,
218B723D0E80091000A7CEAD /* Debug_optimised */,
3B5DEDF00861C3ED00B9AEEA /* Release */,
+ 3BFD34A724C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4597,6 +5047,7 @@
21195BB818800BF200EAB1FF /* Debug_harder */,
218B723F0E80091000A7CEAD /* Debug_optimised */,
3B5DEDF40861C3ED00B9AEEA /* Release */,
+ 3BFD34A824C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4608,6 +5059,7 @@
21195BB918800BF200EAB1FF /* Debug_harder */,
218B72400E80091000A7CEAD /* Debug_optimised */,
3B5DEDF80861C3ED00B9AEEA /* Release */,
+ 3BFD34A924C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4619,6 +5071,7 @@
21195BBA18800BF200EAB1FF /* Debug_harder */,
218B72420E80091000A7CEAD /* Debug_optimised */,
3B5DEDFC0861C3ED00B9AEEA /* Release */,
+ 3BFD34AA24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4630,6 +5083,7 @@
21195BBB18800BF200EAB1FF /* Debug_harder */,
218B72430E80091000A7CEAD /* Debug_optimised */,
3B5DEE000861C3ED00B9AEEA /* Release */,
+ 3BFD34AB24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4641,6 +5095,7 @@
21195BBC18800BF200EAB1FF /* Debug_harder */,
218B72440E80091000A7CEAD /* Debug_optimised */,
3B5DEE040861C3ED00B9AEEA /* Release */,
+ 3BFD34AC24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4652,6 +5107,7 @@
21195BBD18800BF200EAB1FF /* Debug_harder */,
218B72450E80091000A7CEAD /* Debug_optimised */,
3B5DEE080861C3ED00B9AEEA /* Release */,
+ 3BFD34AD24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4663,6 +5119,7 @@
21195BBE18800BF200EAB1FF /* Debug_harder */,
218B72460E80091000A7CEAD /* Debug_optimised */,
3B5DEE0C0861C3ED00B9AEEA /* Release */,
+ 3BFD34AE24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4674,6 +5131,7 @@
21195BBF18800BF200EAB1FF /* Debug_harder */,
218B72470E80091000A7CEAD /* Debug_optimised */,
3B5DEE100861C3ED00B9AEEA /* Release */,
+ 3BFD34AF24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4685,6 +5143,7 @@
21195BAF18800BF200EAB1FF /* Debug_harder */,
218B72360E80091000A7CEAD /* Debug_optimised */,
3B5DEE140861C3ED00B9AEEA /* Release */,
+ 3BFD349F24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4696,6 +5155,7 @@
21195BA518800BF200EAB1FF /* Debug_harder */,
218B72480E80091000A7CEAD /* Debug_optimised */,
3B5DEE180861C3ED00B9AEEA /* Release */,
+ 3BFD349524C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4707,6 +5167,7 @@
21195BC018800BF200EAB1FF /* Debug_harder */,
218B724C0E80091000A7CEAD /* Debug_optimised */,
3B5DEE200861C3ED00B9AEEA /* Release */,
+ 3BFD34B024C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4718,6 +5179,7 @@
21195BA318800BF200EAB1FF /* Debug_harder */,
218B72540E80091000A7CEAD /* Debug_optimised */,
3B5DEE240861C3ED00B9AEEA /* Release */,
+ 3BFD349324C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4729,6 +5191,7 @@
21195BC418800BF200EAB1FF /* Debug_harder */,
218B72530E80091000A7CEAD /* Debug_optimised */,
3BE056E00DE6E6AA0060DD66 /* Release */,
+ 3BFD34B424C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4740,6 +5203,7 @@
21195BA418800BF200EAB1FF /* Debug_harder */,
218B72500E80091000A7CEAD /* Debug_optimised */,
3BFEBB470AB172450026E8D4 /* Release */,
+ 3BFD349424C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4751,6 +5215,7 @@
21195BB118800BF200EAB1FF /* Debug_harder */,
218B724A0E80091000A7CEAD /* Debug_optimised */,
5C3DB7AF0AB078B000BE8005 /* Release */,
+ 3BFD34A124C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4762,6 +5227,7 @@
21195BA918800BF200EAB1FF /* Debug_harder */,
5CC6167A1604F43B000E6DD7 /* Debug_optimised */,
5CC6167B1604F43B000E6DD7 /* Release */,
+ 3BFD349924C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4773,6 +5239,7 @@
21195BB018800BF200EAB1FF /* Debug_harder */,
218B72490E80091000A7CEAD /* Debug_optimised */,
5CCF9CF30AAB84E900DD7255 /* Release */,
+ 3BFD34A024C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4784,6 +5251,7 @@
21195BA618800BF200EAB1FF /* Debug_harder */,
218B72370E80091000A7CEAD /* Debug_optimised */,
5CD5DD240E17F6A800C85139 /* Release */,
+ 3BFD349624C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4795,6 +5263,7 @@
21195BA718800BF200EAB1FF /* Debug_harder */,
218B724F0E80091000A7CEAD /* Debug_optimised */,
5CEF80C10AB1582C00AE1943 /* Release */,
+ 3BFD349724C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4806,6 +5275,7 @@
21195BB218800BF200EAB1FF /* Debug_harder */,
218B724B0E80091000A7CEAD /* Debug_optimised */,
5CEF80DC0AB1590700AE1943 /* Release */,
+ 3BFD34A224C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4817,6 +5287,7 @@
21195BAE18800BF200EAB1FF /* Debug_harder */,
218B72350E80091000A7CEAD /* Debug_optimised */,
5CFCB88A0AA5A86800DAB9A5 /* Release */,
+ 3BFD349E24C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
@@ -4828,6 +5299,7 @@
21195BA818800BF200EAB1FF /* Debug_harder */,
218B72510E80091000A7CEAD /* Debug_optimised */,
F47D6B1608A36696001D9636 /* Release */,
+ 3BFD349824C1F61800A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug_optimised;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2020-07-17 15:53:00
|
Revision: 3743
http://sourceforge.net/p/ftm/code/3743
Author: borghesi
Date: 2020-07-17 15:52:58 +0000 (Fri, 17 Jul 2020)
Log Message:
-----------
ftm update for new release
Modified Paths:
--------------
trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
Modified: trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
===================================================================
--- trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2019-05-23 13:13:23 UTC (rev 3742)
+++ trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2020-07-17 15:52:58 UTC (rev 3743)
@@ -715,7 +715,7 @@
outputFiles = (
tokenizer.c,
);
- script = "flex -8 -v -olex.yy.c $INPUT_FILE_PATH;\nmv -f lex.yy.c $INPUT_FILE_DIR/$INPUT_FILE_BASE.c\nmv -f $INPUT_FILE_DIR/$INPUT_FILE_BASE.c $DERIVED_FILE_DIR/$INPUT_FILE_BASE.c";
+ script = "flex -8 -v -olex.yy.c $INPUT_FILE_PATH;\nmv -f lex.yy.c $DERIVED_FILE_DIR/$INPUT_FILE_BASE.c\ncp $DERIVED_FILE_DIR/$INPUT_FILE_BASE.c $INPUT_FILE_DIR/$INPUT_FILE_BASE.c";
};
5C209E3F0D0EDF8200BF135F /* PBXBuildRule */ = {
isa = PBXBuildRule;
@@ -2729,8 +2729,8 @@
);
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
LIBRARY_SEARCH_PATHS = "$(COMPONENTS_DIR)/**";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max5";
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"$(SYS_FRAMEWORKS)",
@@ -2745,12 +2745,12 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"12/2018\\\"";
+ VERSION_DATE = "\\\"07/2020\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 3;
- VERSION_TAG = "\\\"64bit\\\"";
+ VERSION_RELEASE = 4;
+ VERSION_TAG = "\\\"BETA\\\"";
};
name = Debug_optimised;
};
@@ -2834,7 +2834,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
COPYING_PRESERVES_HFS_DATA = YES;
COPY_PHASE_STRIP = YES;
@@ -2951,8 +2951,8 @@
);
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
LIBRARY_SEARCH_PATHS = "$(COMPONENTS_DIR)/**";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max5";
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"$(SYS_FRAMEWORKS)",
@@ -2967,12 +2967,12 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"12/2018\\\"";
+ VERSION_DATE = "\\\"07/2020\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 3;
- VERSION_TAG = "\\\"64bit\\\"";
+ VERSION_RELEASE = 4;
+ VERSION_TAG = "\\\"BETA\\\"";
};
name = Debug;
};
@@ -3027,8 +3027,8 @@
);
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
LIBRARY_SEARCH_PATHS = "$(COMPONENTS_DIR)/**";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max5";
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"$(SYS_FRAMEWORKS)",
@@ -3043,12 +3043,12 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"12/2018\\\"";
+ VERSION_DATE = "\\\"07/2020\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 3;
- VERSION_TAG = "\\\"64bit\\\"";
+ VERSION_RELEASE = 4;
+ VERSION_TAG = "\\\"BETA\\\"";
WARNING_LDFLAGS = "";
};
name = Release;
@@ -3057,7 +3057,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
COPYING_PRESERVES_HFS_DATA = YES;
COPY_PHASE_STRIP = YES;
@@ -3087,7 +3087,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
- ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ ARCHS = "$(ARCHS_STANDARD)";
COMBINE_HIDPI_IMAGES = YES;
EXECUTABLE_SUFFIX = "";
EXTERNALS_DIR = "../../../../../build-max5";
@@ -3137,6 +3137,263 @@
};
name = Release;
};
+ 3BFD348924C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CODE_SIGN_IDENTITY = "Developer ID Application: INST RECHER COORD ACOUST MUSICALE (3BD2P55TR2)";
+ CODE_SIGN_STYLE = Manual;
+ COMPONENTS_DIR = ../../../../components;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ EXTERNALS_DIR = "../../../../../build-max5";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(FTM_FRAMEWORK_DIR)",
+ "$(MAXAPI_DIR)/**",
+ /Library/Frameworks,
+ "$(VECLIB_FRAMEWORK_DIR)",
+ );
+ FTM_FRAMEWORK_DIR = "$(EXTERNALS_DIR)";
+ GCC_AUTO_VECTORIZATION = YES;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_OPTIMIZATION_LEVEL = 3;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "$(MAXAPI_DIR)/max-includes/macho-prefix.pch";
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(DEBUG_MACROS)",
+ "$(VERSION_MACROS)",
+ "IMTREDITOR_C_GUI_INTERFACE=1",
+ );
+ GCC_UNROLL_LOOPS = YES;
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = NO;
+ GCC_WARN_CHECK_SWITCH_STATEMENTS = YES;
+ GCC_WARN_EFFECTIVE_CPLUSPLUS_VIOLATIONS = YES;
+ GCC_WARN_MISSING_PARENTHESES = YES;
+ GCC_WARN_PEDANTIC = NO;
+ GCC_WARN_SHADOW = NO;
+ GCC_WARN_SIGN_COMPARE = YES;
+ GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
+ GCC_WARN_UNKNOWN_PRAGMAS = NO;
+ GCC_WARN_UNUSED_LABEL = NO;
+ GCC_WARN_UNUSED_PARAMETER = NO;
+ GCC_WARN_UNUSED_VALUE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(MAXAPI_DIR)/**",
+ "$(SNDFILE_DIR)",
+ "$(SDIF_DIR)",
+ "$(COMPONENTS_DIR)/rta",
+ "$(COMPONENTS_DIR)/ImtrEditor/src",
+ "$(VECLIB_FRAMEWORK_DIR)/vecLib.framework/Headers",
+ );
+ JUCE_DIR = "$(COMPONENTS_DIR)/juce";
+ LIBRARY_SEARCH_PATHS = "$(COMPONENTS_DIR)/**";
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
+ MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
+ OTHER_CODE_SIGN_FLAGS = "--timestamp";
+ OTHER_LDFLAGS = (
+ "$(SYS_FRAMEWORKS)",
+ "$(MAX_FRAMEWORKS)",
+ "$(SNDFILE_LIBS)",
+ "$(SDIF_LIBS)",
+ );
+ SDIF_DIR = "$(COMPONENTS_DIR)/sdif";
+ SDIF_LIBS = "$(SDIF_DIR)/macos-fat/libsdif.a";
+ SKIP_INSTALL = YES;
+ SNDFILE_DIR = "$(COMPONENTS_DIR)/sndfile";
+ SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
+ SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
+ VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
+ VERSION_DATE = "\\\"07/2020\\\"";
+ VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
+ VERSION_MAJOR = 2;
+ VERSION_MINOR = 7;
+ VERSION_RELEASE = 4;
+ VERSION_TAG = "\\\"BETA\\\"";
+ WARNING_LDFLAGS = "";
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348A24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUILT_LIBS_DIR = "$(COMPONENTS_DIR)/built-libs/macosx/ub";
+ COMBINE_HIDPI_IMAGES = YES;
+ DYLIB_COMPATIBILITY_VERSION = "$(FRAMEWORK_VERSION)";
+ DYLIB_CURRENT_VERSION = "$(FRAMEWORK_VERSION)";
+ FRAMEWORK_VERSION = "$(VERSION_MAJOR).$(VERSION_MINOR)";
+ INSTALL_PATH = "$(FRAMEWORK_PATH)";
+ MACH_O_TYPE = mh_dylib;
+ OTHER_LDFLAGS = (
+ "$(BUILT_LIBS_DIR)/libsdif.a",
+ "$(BUILT_LIBS_DIR)/libsndfile.a",
+ "$(BUILT_LIBS_DIR)/libFLAC.a",
+ "$(BUILT_LIBS_DIR)/libogg.a",
+ "$(BUILT_LIBS_DIR)/libvorbis.a",
+ "$(BUILT_LIBS_DIR)/libvorbisenc.a",
+ "-flat_namespace",
+ "-undefined",
+ suppress,
+ );
+ PRODUCT_NAME = FTMlib;
+ WRAPPER_EXTENSION = framework;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348B24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(inherited)",
+ "FTS_NODEPS=1",
+ "FTM_DISCREET=1",
+ );
+ PRODUCT_NAME = ftm;
+ SKIP_INSTALL = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348C24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ COMPONENTS_DIR = ../../../../../components;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(inherited)",
+ "FTM_LIGHT=1",
+ );
+ PREBINDING = NO;
+ PRODUCT_NAME = ftmlight;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348D24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ PRODUCT_NAME = "FTM version";
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348E24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ PRODUCT_NAME = doc;
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD348F24C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ COMBINE_HIDPI_IMAGES = YES;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ EXTERNALS_DIR = "../../../../../build-max5";
+ FTM_FRAMEWORK_DIR = "$(EXTERNALS_DIR)";
+ FTM_VERSION = 2.5;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_MODEL_TUNING = G5;
+ GENERATE_PKGINFO_FILE = YES;
+ INFOPLIST_FILE = ftmexternal.plist;
+ MACH_O_TYPE = mh_dylib;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ PREBINDING = NO;
+ PRODUCT_NAME = ftm;
+ WRAPPER_EXTENSION = mxo;
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349024C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COMBINE_HIDPI_IMAGES = YES;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ EXTERNALS_DIR = "../../../../../build-max5";
+ FTM_FRAMEWORK_DIR = "$(EXTERNALS_DIR)";
+ FTM_VERSION = 2.5;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_MODEL_TUNING = G5;
+ GENERATE_PKGINFO_FILE = YES;
+ INFOPLIST_FILE = ftmexternal.plist;
+ MACH_O_TYPE = mh_dylib;
+ PREBINDING = NO;
+ PRODUCT_NAME = ftm;
+ WRAPPER_EXTENSION = mxo;
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349124C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ COMBINE_HIDPI_IMAGES = YES;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEBUG_MACROS = "";
+ EXTERNALS_DIR = "../../../../../build-max5";
+ FTM_FRAMEWORK_DIR = "$(EXTERNALS_DIR)";
+ FTM_VERSION = 2.5;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_MODEL_TUNING = G5;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(DEBUG_MACROS)",
+ "$(VERSION_MACROS)",
+ "IMTREDITOR_C_GUI_INTERFACE=1",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GENERATE_PKGINFO_FILE = YES;
+ INFOPLIST_FILE = ftmexternal.plist;
+ MACH_O_TYPE = mh_dylib;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max6.1";
+ OTHER_LDFLAGS = (
+ "$(SYS_FRAMEWORKS)",
+ "$(MAX_FRAMEWORKS)",
+ "$(SNDFILE_LIBS)",
+ "$(SDIF_LIBS)",
+ "-U_object_new_imp",
+ "-Uobject_method",
+ );
+ PREBINDING = NO;
+ PRODUCT_NAME = ftm;
+ WRAPPER_EXTENSION = mxo;
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
+ 3BFD349224C1F0F500A7EF6B /* ReleaseCodesign */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_MODEL_TUNING = G5;
+ GCC_PREPROCESSOR_DEFINITIONS = MAPFUNS_TEST;
+ INSTALL_PATH = /usr/local/bin;
+ PREBINDING = NO;
+ PRODUCT_NAME = mapfuns_test;
+ ZERO_LINK = NO;
+ };
+ name = ReleaseCodesign;
+ };
5C209E420D0EDF8200BF135F /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -3287,8 +3544,8 @@
);
JUCE_DIR = "$(COMPONENTS_DIR)/juce";
LIBRARY_SEARCH_PATHS = "$(COMPONENTS_DIR)/**";
- MACOSX_DEPLOYMENT_TARGET = 10.6;
- MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max5";
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
+ MAXAPI_DIR = "${COMPONENTS_DIR}/maxapi/max8";
MAX_FRAMEWORKS = "-framework MaxAPI -framework MaxAudioAPI";
OTHER_LDFLAGS = (
"$(SYS_FRAMEWORKS)",
@@ -3303,12 +3560,12 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"12/2018\\\"";
+ VERSION_DATE = "\\\"07/2020\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 3;
- VERSION_TAG = "\\\"64bit\\\"";
+ VERSION_RELEASE = 4;
+ VERSION_TAG = "\\\"BETA\\\"";
};
name = Debug_harder;
};
@@ -3398,6 +3655,7 @@
2125B0791BA6F85900D5349C /* Debug_optimised */,
2125B07A1BA6F85900D5349C /* Debug_harder */,
2125B07B1BA6F85900D5349C /* Release */,
+ 3BFD349124C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3409,6 +3667,7 @@
21901A421760BB8C00024867 /* Debug_optimised */,
21901A431760BB8C00024867 /* Debug_harder */,
21901A441760BB8C00024867 /* Release */,
+ 3BFD349224C1F0F500A7EF6B /* ReleaseCodesign */,
21901A451760BB8C00024867 /* FORUM-Research */,
21901A461760BB8C00024867 /* FORUM-Studio */,
);
@@ -3422,6 +3681,7 @@
2195C62E1B908DC50035FEBD /* Debug_optimised */,
2195C62F1B908DC50035FEBD /* Debug_harder */,
2195C6301B908DC50035FEBD /* Release */,
+ 3BFD349024C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3433,6 +3693,7 @@
21ECC366164954EE00F9B177 /* Debug_optimised */,
8937598910760F4A00644327 /* Debug_harder */,
3B5DED9D0861BFE900B9AEEA /* Release */,
+ 3BFD348A24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3444,6 +3705,7 @@
21ECC365164954EE00F9B177 /* Debug_optimised */,
8937598810760F4A00644327 /* Debug_harder */,
3B5DEDA10861BFE900B9AEEA /* Release */,
+ 3BFD348924C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3455,6 +3717,7 @@
21ECC36B164954EE00F9B177 /* Debug_optimised */,
3BE2BC0415F752F9008368F4 /* Debug_harder */,
3BE2BC0515F752F9008368F4 /* Release */,
+ 3BFD348F24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3466,6 +3729,7 @@
21ECC367164954EE00F9B177 /* Debug_optimised */,
8937598A10760F4A00644327 /* Debug_harder */,
5C209E430D0EDF8200BF135F /* Release */,
+ 3BFD348B24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3477,6 +3741,7 @@
21ECC369164954EE00F9B177 /* Debug_optimised */,
8937598C10760F4A00644327 /* Debug_harder */,
5C66590A0EBF39A700B866A4 /* Release */,
+ 3BFD348D24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3488,6 +3753,7 @@
21ECC368164954EE00F9B177 /* Debug_optimised */,
8937598B10760F4A00644327 /* Debug_harder */,
5C7009750B836A3F001663C7 /* Release */,
+ 3BFD348C24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
@@ -3499,6 +3765,7 @@
21ECC36A164954EE00F9B177 /* Debug_optimised */,
8937598D10760F4A00644327 /* Debug_harder */,
5CA2145E0DA59B3F00FA6B15 /* Release */,
+ 3BFD348E24C1F0F500A7EF6B /* ReleaseCodesign */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2019-05-23 13:13:33
|
Revision: 3742
http://sourceforge.net/p/ftm/code/3742
Author: borghesi
Date: 2019-05-23 13:13:23 +0000 (Thu, 23 May 2019)
Log Message:
-----------
ftm.editor: update of gui interface
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2019-05-22 09:55:28 UTC (rev 3741)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2019-05-23 13:13:23 UTC (rev 3742)
@@ -420,6 +420,20 @@
return 0;
}
+static void
+fts_get_ring(void *obj, void *context, int *ringIndex, int *ringSize, int *ringTail, double *ringOffset)
+{
+ *ringIndex = 0;
+ *ringSize = 0;
+ *ringTail = 0;
+ *ringOffset = 0.0;
+}
+
+static void
+fts_set_ring_offset(void *obj, void *context, double ringOffset)
+{
+}
+
#pragma mark Bpf: BPF interface
/************************************************************
*
@@ -520,6 +534,8 @@
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
bpf_gui_interface_bpf.getSize = bpf_gui_bpf_get_size;
bpf_gui_interface_bpf.getPoint = bpf_gui_bpf_get_point;
@@ -2200,8 +2216,9 @@
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->setRingOffset = fts_set_ring_offset;
-
fmat_gui_interface_fvec.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_fvec.getPointer = fmat_gui_wave_get_ptr;
fmat_gui_interface_fvec.releasePointer = fmat_gui_wave_release_ptr;
@@ -2231,6 +2248,8 @@
((imtr_guiInterface *)&fmat_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_wave.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_wave.getPointer = fmat_gui_wave_get_ptr;
@@ -2429,6 +2448,8 @@
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_multiwave.getWavesNum = fmat_gui_multiwave_get_waves_num;
fmat_gui_interface_multiwave.getSize = fmat_gui_multiwave_get_size;
@@ -3309,6 +3330,8 @@
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_bpf.getSize = fmat_gui_bpf_get_size;
fmat_gui_interface_bpf.getPoint = fmat_gui_bpf_get_point;
@@ -3555,6 +3578,8 @@
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->setRingOffset = fts_set_ring_offset;
fmat_gui_interface_multibpf.getSize = fmat_gui_multibpf_get_size;
fmat_gui_interface_multibpf.getBpfNum = fmat_gui_multibpf_get_bpf_num;
@@ -3930,6 +3955,8 @@
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->setRingOffset = fts_set_ring_offset;
fvec_gui_interface_fvec.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_fvec.getPointer = fvec_gui_wave_get_ptr;
@@ -3960,6 +3987,8 @@
((imtr_guiInterface *)&fvec_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->setRingOffset = fts_set_ring_offset;
fvec_gui_interface_wave.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_wave.getPointer = fvec_gui_wave_get_ptr;
@@ -4343,6 +4372,8 @@
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
sequence_gui_interface_bpf.getSize = sequence_gui_bpf_get_size;
sequence_gui_interface_bpf.getPoint = sequence_gui_bpf_get_point;
@@ -6887,6 +6918,8 @@
((imtr_guiInterface *)&track_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->getRing = fts_get_ring;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->setRingOffset = fts_set_ring_offset;
track_gui_interface_bpf.getSize = track_gui_bpf_get_size;
track_gui_interface_bpf.getPoint = track_gui_bpf_get_point;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2019-05-22 10:12:08
|
Revision: 3740
http://sourceforge.net/p/ftm/code/3740
Author: borghesi
Date: 2019-05-22 09:54:44 +0000 (Wed, 22 May 2019)
Log Message:
-----------
ftm.editor: update
Modified Paths:
--------------
trunk/ftm/externals/max5/ftm.editor.cpp
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/externals/max5/ftm.editor.cpp
===================================================================
--- trunk/ftm/externals/max5/ftm.editor.cpp 2018-12-07 10:04:01 UTC (rev 3739)
+++ trunk/ftm/externals/max5/ftm.editor.cpp 2019-05-22 09:54:44 UTC (rev 3740)
@@ -415,7 +415,7 @@
{
imtr_guiInterface *guiInterface = (imtr_guiInterface *)fts_object_get_gui_interface(obj, interface_name);
- if(index < editorContainer->getEditorsSize() && guiInterface != NULL)
+ if(index < editorContainer->getNumEditors() && guiInterface != NULL)
{
fts_object_t *old_obj = ((fts_object_t *)editorContainer->getEditor(index)->getObject());
if(old_obj != obj)
@@ -452,7 +452,7 @@
IMTREDITOR_JUCE_NAMESPACE::String( fts_symbol_name(identifier)));
interfaces.add(interface_name);
- if(editorContainer->getEditorsSize() == 0)
+ if(editorContainer->getNumEditors() == 0)
{
IMTREDITOR_JUCE_NAMESPACE::Array <ImtrEditor *> ftmeditors;
ftmeditors.add(dynamic_cast<ImtrEditor *>(c));
@@ -473,7 +473,7 @@
IMTREDITOR_JUCE_NAMESPACE::String( fts_symbol_name(identifier)));
interfaces.insert(index, interface_name);
- if(editorContainer->getEditorsSize() == 0)
+ if(editorContainer->getNumEditors() == 0)
{
IMTREDITOR_JUCE_NAMESPACE::Array <ImtrEditor *> ftmeditors;
ftmeditors.add(dynamic_cast<ImtrEditor *>(c));
@@ -582,7 +582,7 @@
void removeView(int viewIndex)
{
- if(viewIndex < editorContainer->getEditorsSize())
+ if(viewIndex < editorContainer->getNumEditors())
{
interfaces.remove(viewIndex);
editorContainer->removeEditor((dynamic_cast<IMTREDITOR_JUCE_NAMESPACE::Component *>(editorContainer->getEditors()[viewIndex])), true);
@@ -754,7 +754,7 @@
void outputRange()
{
- if(editorContainer->getEditorsSize() > 0)
+ if(editorContainer->getNumEditors() > 0)
{
EditorAtom atoms[4];
@@ -801,6 +801,11 @@
jmouse_setcursor((t_object *)linklist_getindex(external->attachedviews, i), (t_object *)external, getCursorType(type));
}
+ void cursorVisibleChanged(bool visible)
+ {
+ external->cursor_visible = visible;
+ }
+
void setCursorVisible(bool visible)
{
external->cursor_visible = visible;
@@ -1559,7 +1564,7 @@
if(editorContainer != NULL)
{
- for(i = editorContainer->getEditorsSize()-1; i >= 0; i--)
+ for(i = editorContainer->getNumEditors()-1; i >= 0; i--)
{
obj = (fts_object_t *)editorContainer->getEditor(i)->getObject();
fts_object_remove_listener(obj, external);
@@ -1589,7 +1594,7 @@
int i;
ImtrTypes::change_type changeType;
const IMTREDITOR_JUCE_NAMESPACE::MessageManagerLock mmLock;
- for(i = 0; i < editorContainer->getEditorsSize(); i++)
+ for(i = 0; i < editorContainer->getNumEditors(); i++)
{
changeType = external->objectsChangeType[i];
if(changeType > ImtrTypes::no_change)
@@ -1625,7 +1630,7 @@
if(autoupdate && !upd)
{
- for(i = 0 ; i < editorContainer->getEditorsSize(); i++)
+ for(i = 0 ; i < editorContainer->getNumEditors(); i++)
{
obj = (fts_object_t *)(editorContainer->getEditor(i)->getObject());
fts_object_remove_listener(obj, external);
@@ -1634,7 +1639,7 @@
}
else if(!autoupdate && upd)
{
- for(i = 0 ; i < editorContainer->getEditorsSize(); i++)
+ for(i = 0 ; i < editorContainer->getNumEditors(); i++)
{
obj = (fts_object_t *)(editorContainer->getEditor(i)->getObject());
ftmeditor_add_listener(external, obj);
@@ -1963,7 +1968,7 @@
void setViewProperty(int index, fts_symbol_t prop, int ac, fts_atom_t *at)
{
- if(editorContainer->getEditorsSize() > 0)
+ if(editorContainer->getNumEditors() > 0)
{
if(prop == fts_s_name)
{
@@ -3036,7 +3041,7 @@
static int
ftmeditor_get_view_index_from_object(ftmeditor_t *self, fts_object_t *obj)
{
- int size = self->container->editorContainer->getEditorsSize();
+ int size = self->container->editorContainer->getNumEditors();
int index = -1;
int i;
ImtrEditor *editor;
@@ -3065,7 +3070,7 @@
else changeType = ImtrTypes::other_change;
}
int viewIndex = ftmeditor_get_view_index_from_object(self, o);
- if(viewIndex < self->container->editorContainer->getEditorsSize() && viewIndex >= 0)
+ if(viewIndex < self->container->editorContainer->getNumEditors() && viewIndex >= 0)
self->objectsChangeType[viewIndex] = changeType;
/* start repaint cycle */
@@ -3076,7 +3081,7 @@
void
ftmeditor_set_all_objects_changed(ftmeditor_t *self)
{
- for(int i = 0; i < self->container->editorContainer->getEditorsSize(); i++)
+ for(int i = 0; i < self->container->editorContainer->getNumEditors(); i++)
self->objectsChangeType[i] = ImtrTypes::other_change;
}
@@ -3554,7 +3559,7 @@
}
else
{
- int ed_size = self->container->editorContainer->getEditorsSize();
+ int ed_size = self->container->editorContainer->getNumEditors();
fts_symbol_t interface_name;
/* if first atom is int == keep_interface property value */
@@ -3718,7 +3723,7 @@
if(propname == fts_s_interface)
{
ImtrEditorContainer *container = self->container;
- bool have_editor = (container != NULL) && (container->editorContainer->getEditorsSize() > 0) && (index < container->editorContainer->getEditorsSize());
+ bool have_editor = (container != NULL) && (container->editorContainer->getNumEditors() > 0) && (index < container->editorContainer->getNumEditors());
argc--;
argv++;
@@ -3742,7 +3747,7 @@
else
{
int i;
- for(i = 0; i < container->editorContainer->getEditorsSize(); i++)
+ for(i = 0; i < container->editorContainer->getNumEditors(); i++)
{
ImtrEditor *editor = container->editorContainer->getEditors()[i];
fts_set_pointer(at, dynamic_cast<IMTREDITOR_JUCE_NAMESPACE::Component *>(editor));
@@ -5633,7 +5638,7 @@
bool have_editor;
t_symbol *type;
ImtrEditorContainer *container = self->container;
- have_editor = (container != NULL) && (container->editorContainer->getEditorsSize() > 0) && (self->view_inspector_track < container->editorContainer->getEditorsSize());
+ have_editor = (container != NULL) && (container->editorContainer->getNumEditors() > 0) && (self->view_inspector_track < container->editorContainer->getNumEditors());
if(have_editor)
{
@@ -6157,7 +6162,7 @@
ftmeditor_init_inspector_track_attribute(ftmeditor_t *self)
{
ImtrEditorContainer *container = self->container;
- if((container != NULL) && (container->editorContainer->getEditorsSize() > 0))
+ if((container != NULL) && (container->editorContainer->getNumEditors() > 0))
{
char view_names[2048];
int i;
@@ -6164,7 +6169,7 @@
t_symbol *view_name;
strcpy(view_names, " ");
- for(i = 0; i < container->editorContainer->getEditorsSize(); i++)
+ for(i = 0; i < container->editorContainer->getNumEditors(); i++)
{
view_name = container->getSymbolFromString(container->editorContainer->getEditor(i)->getViewName());
if(view_name == fts_s_empty_string) view_name = container->getSymbolFromString(container->editorContainer->getEditor(i)->getDescription());
@@ -6189,7 +6194,7 @@
ftmeditor_get_attribute_view_inspector_track(ftmeditor_t *self, void *attr, long *ac, t_atom **av)
{
ImtrEditorContainer *container = self->container;
- int numViews = container->editorContainer->getEditorsSize();
+ int numViews = container->editorContainer->getNumEditors();
int viewIndex = (int)self->view_inspector_track;
if ((*ac) == 0 || (*av) == NULL)
@@ -6221,7 +6226,7 @@
if(argc > 0 && fts_is_number(argv))
{
ImtrEditorContainer *container = self->container;
- int numViews = container->editorContainer->getEditorsSize();
+ int numViews = container->editorContainer->getNumEditors();
int viewIndex = (int)fts_get_number_int(argv);
if(viewIndex < 0 || numViews == 0)
@@ -6242,7 +6247,7 @@
{
ImtrEditorContainer *container = self->container;
- bool have_editor = (container->editorContainer->getEditorsSize() > 0) && (self->view_inspector_track < container->editorContainer->getEditorsSize());
+ bool have_editor = (container->editorContainer->getNumEditors() > 0) && (self->view_inspector_track < container->editorContainer->getNumEditors());
t_symbol *attrname = (t_symbol *)object_method((t_object *)attr, gensym("getname"));
t_symbol *propname = gensym(strchr(attrname->s_name, '_') + 1);
@@ -6674,7 +6679,7 @@
ftmeditor_set_attribute_view(ftmeditor_t *self, t_object *attr, long argc, t_atom *argv)
{
ImtrEditorContainer *container = self->container;
- bool have_editor = (container->editorContainer->getEditorsSize() > 0) && (self->view_inspector_track < container->editorContainer->getEditorsSize());
+ bool have_editor = (container->editorContainer->getNumEditors() > 0) && (self->view_inspector_track < container->editorContainer->getNumEditors());
t_symbol *attrname = (t_symbol *)object_method((t_object *)attr, gensym("getname"));
t_symbol *propname = gensym(strchr(attrname->s_name, '_') + 1);
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2018-12-07 10:04:01 UTC (rev 3739)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2019-05-22 09:54:44 UTC (rev 3740)
@@ -1985,6 +1985,28 @@
return min;
}
+static float
+fm_get_mean_value_in_range(fmat_t *mat, int start, int end, int stride, int onset)
+{
+ float *ptr = fmat_get_ptr(mat) + onset;
+ int size = fmat_get_m(mat) * fmat_get_n(mat);
+ float mean = 0.0;
+ float val;
+ if(size > 0)
+ {
+ int i;
+ if(end > size)
+ end = size;
+
+ for (i=start*stride; i<end*stride; i+=stride)
+ {
+ val = ptr[i];
+ mean += val*val;
+ }
+ mean = sqrt(mean/(end-start));
+ }
+ return mean;
+}
static int
fmat_gui_wave_get_size(void *obj, void *context)
{
@@ -2015,7 +2037,7 @@
}
static void
-fmat_gui_wave_get_min_max_values(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min, double *max)
+fmat_gui_wave_get_min_max_mean(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min, double *max, double *mean)
{
fmat_t *self = (fmat_t *)obj;
int size = self->m * self->n;
@@ -2026,11 +2048,55 @@
fmat_lock(self);
*max = fm_get_max_value_in_range(self, start, end, self->n, onset);
*min = fm_get_min_value_in_range(self, start, end, self->n, onset);
+ *mean = fm_get_mean_value_in_range(self, start, end, self->n, onset);
fmat_unlock(self);
}
}
static void
+fmat_gui_wave_get_two_min_max(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min1, double *max1, double *min2, double *max2)
+{
+ fmat_t *self = (fmat_t *)obj;
+ double vmax1 = 0.0;
+ double vmin1 = 0.0;
+ double vmax2 = 0.0;
+ double vmin2 = 0.0;
+ float val;
+
+ float *ptr = fmat_get_ptr(self) + onset;
+ int size = fmat_get_m(self) * fmat_get_n(self);
+
+ if(size > 0)
+ {
+ int i;
+ int start = (rangeStartIndex > 0) ? rangeStartIndex : 0;
+ int end = (rangeSize > 0 && start+rangeSize < self->m) ? start+rangeSize : self->m;
+
+ if(end > size)
+ end = size;
+
+ vmax2 = InitMax;
+ vmax1 = vmax2;
+ vmin2 = InitMin;
+ vmin1 = vmin2;
+
+ for (i=start; i<end; i++)
+ {
+ val = ptr[i*self->n];
+ if(val > vmax1) vmax1 = val;
+ if(val < vmin1) vmin1 = val;
+ if(val < vmin2 && val > vmin1) vmin2 = val;
+ if(val > vmax2 && val < vmax1) vmax2 = val;
+ }
+ }
+
+ *max1 = vmax1;
+ *min1 = vmin1;
+ *max2 = vmax2;
+ *min2 = vmin2;
+}
+
+static void
fmat_gui_wave_interpolate(void *obj, void *context, int onset, int start_idx, int end_idx, double start_val, double end_val)
{
fmat_t *self = (fmat_t *)obj;
@@ -2139,7 +2205,8 @@
fmat_gui_interface_fvec.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_fvec.getPointer = fmat_gui_wave_get_ptr;
fmat_gui_interface_fvec.releasePointer = fmat_gui_wave_release_ptr;
- fmat_gui_interface_fvec.getMinMaxValues = fmat_gui_wave_get_min_max_values;
+ fmat_gui_interface_fvec.getMinMaxMean = fmat_gui_wave_get_min_max_mean;
+ fmat_gui_interface_fvec.getTwoMinMax = fmat_gui_wave_get_two_min_max;
fmat_gui_interface_fvec.interpolate = fmat_gui_wave_interpolate;
fmat_gui_interface_fvec.increment = fmat_gui_wave_increment;
fmat_gui_interface_fvec.set = fmat_gui_wave_set;
@@ -2168,7 +2235,8 @@
fmat_gui_interface_wave.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_wave.getPointer = fmat_gui_wave_get_ptr;
fmat_gui_interface_wave.releasePointer = fmat_gui_wave_release_ptr;
- fmat_gui_interface_wave.getMinMaxValues = fmat_gui_wave_get_min_max_values;
+ fmat_gui_interface_wave.getMinMaxMean = fmat_gui_wave_get_min_max_mean;
+ fmat_gui_interface_wave.getTwoMinMax = fmat_gui_wave_get_two_min_max;
fmat_gui_interface_wave.interpolate = fmat_gui_wave_interpolate;
fmat_gui_interface_wave.increment = fmat_gui_wave_increment;
fmat_gui_interface_wave.set = fmat_gui_wave_set;
@@ -2224,7 +2292,7 @@
}
static void
-fmat_gui_multiwave_get_min_max_values(void *obj, void *context, int index, int rangeStartIndex, int rangeSize, double *min, double *max)
+fmat_gui_multiwave_get_min_max_mean(void *obj, void *context, int index, int rangeStartIndex, int rangeSize, double *min, double *max, double *mean)
{
fmat_t *self = (fmat_t *)obj;
@@ -2232,12 +2300,56 @@
int end = (rangeSize > 0 && start+rangeSize < self->m) ? start+rangeSize : self->m;
fmat_lock(self);
- *min = fm_get_min_value_in_range(self, start, end, self->n, 0);
- *max = fm_get_max_value_in_range(self, start, end, self->n, 0);
+ *min = fm_get_min_value_in_range(self, start, end, self->n, index);
+ *max = fm_get_max_value_in_range(self, start, end, self->n, index);
+ *mean = fm_get_mean_value_in_range(self, start, end, self->n, index);
fmat_unlock(self);
}
static void
+fmat_gui_multiwave_get_two_min_max(void *obj, void *context, int index, int rangeStartIndex, int rangeSize, double *min1, double *max1, double *min2, double *max2)
+{
+ fmat_t *self = (fmat_t *)obj;
+ double vmax1 = 0.0;
+ double vmin1 = 0.0;
+ double vmax2 = 0.0;
+ double vmin2 = 0.0;
+ float val;
+
+ float *ptr = fmat_get_ptr(self) + index;
+ int size = fmat_get_m(self) * fmat_get_n(self);
+
+ if(size > 0)
+ {
+ int i;
+ int start = (rangeStartIndex > 0) ? rangeStartIndex : 0;
+ int end = (rangeSize > 0 && start+rangeSize < self->m) ? start+rangeSize : self->m;
+
+ if(end > size)
+ end = size;
+
+ vmax2 = InitMax;
+ vmax1 = vmax2;
+ vmin2 = InitMin;
+ vmin1 = vmin2;
+
+ for (i=start; i<end; i++)
+ {
+ val = ptr[i*self->n];
+ if(val > vmax1) vmax1 = val;
+ if(val < vmin1) vmin1 = val;
+ if(val < vmin2 && val > vmin1) vmin2 = val;
+ if(val > vmax2 && val < vmax1) vmax2 = val;
+ }
+ }
+
+ *max1 = vmax1;
+ *min1 = vmin1;
+ *max2 = vmax2;
+ *min2 = vmin2;
+}
+
+static void
fmat_gui_multiwave_interpolate(void *obj, void *context, int waveIndex, int start_idx, int end_idx, double start_val, double end_val)
{
fmat_t *self = (fmat_t *)obj;
@@ -2323,7 +2435,8 @@
fmat_gui_interface_multiwave.getPointer = fmat_gui_multiwave_get_ptr;
fmat_gui_interface_multiwave.releasePointer = fmat_gui_multiwave_release_ptr;
- fmat_gui_interface_multiwave.getMinMaxValues = fmat_gui_multiwave_get_min_max_values;
+ fmat_gui_interface_multiwave.getMinMaxMean = fmat_gui_multiwave_get_min_max_mean;
+ fmat_gui_interface_multiwave.getTwoMinMaxValues = fmat_gui_multiwave_get_two_min_max;
fmat_gui_interface_multiwave.interpolate = fmat_gui_multiwave_interpolate;
fmat_gui_interface_multiwave.increment = fmat_gui_multiwave_increment;
fmat_gui_interface_multiwave.getWave = fmat_gui_multiwave_get_wave;
@@ -3383,17 +3496,19 @@
}
static void
-fmat_gui_multibpf_get_min_max_values(void *obj, void *context, int bpfIndex, double *min, double *max)
+fmat_gui_multibpf_get_min_max_mean(void *obj, void *context, int bpfIndex, int rangeStartIndex, int rangeSize, double *min, double *max, double *mean)
{
fmat_t *self = (fmat_t *)obj;
int i;
float vmax = 0.0;
float vmin = 0.0;
+ float vmean = 0.0f;
fmat_lock(self);
if(bpfIndex < self->n)
{
+ int startIndex = 0;
float val = fmat_get_element(self, 0, bpfIndex);
if(not_inf_nor_nan(val))
{
@@ -3400,7 +3515,12 @@
vmax = val;
vmin = vmax;
}
- for(i = 1; i < self->m; i++)
+ startIndex++;
+ if(rangeStartIndex >= 0 && rangeStartIndex <self->m)
+ startIndex = rangeStartIndex;
+ if(rangeSize < 0) rangeSize = 0;
+
+ for(i = startIndex; i < self->m && i < (startIndex+rangeSize); i++)
{
val = fmat_get_element(self, i, bpfIndex);
if(not_inf_nor_nan(val))
@@ -3407,8 +3527,10 @@
{
if(val > vmax) vmax = val;
if(val < vmin) vmin = val;
+ vmean += val*val;
}
}
+ vmean = sqrt(vmean/rangeSize);
}
fmat_unlock(self);
@@ -3415,6 +3537,7 @@
*max = vmax;
*min = vmin;
+ *mean = vmean;
}
@@ -3444,7 +3567,7 @@
fmat_gui_interface_multibpf.getNextPoint = fmat_gui_multibpf_get_next_point;
fmat_gui_interface_multibpf.getBpf = fmat_gui_multibpf_get_bpf;
fmat_gui_interface_multibpf.getBpfName = fmat_gui_multibpf_get_bpf_name;
- fmat_gui_interface_multibpf.getMinMaxValues = fmat_gui_multibpf_get_min_max_values;
+ fmat_gui_interface_multibpf.getMinMaxMean = fmat_gui_multibpf_get_min_max_mean;
fts_class_instantiate(fmat_class);
fts_class_gui_interface(fmat_class, fts_s_multibpf, &fmat_gui_interface_multibpf);
@@ -3636,7 +3759,7 @@
}
static void
-fvec_gui_wave_get_min_max_values(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min, double *max)
+fvec_gui_wave_get_min_max_mean(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min, double *max, double *mean)
{
fvec_t *self = (fvec_t *)obj;
float *p;
@@ -3643,6 +3766,7 @@
int size, stride;
float vmax = 0.0;
float vmin = 0.0;
+ float vmean = 0.0;
fvec_vector_lock(self, &p, &size, &stride);
if(size > 0)
@@ -3649,14 +3773,53 @@
{
vmin = fvec_vector_get_min(p, size, stride);
vmax = fvec_vector_get_max(p, size, stride);
+ vmean = fvec_vector_get_mean(p, size, stride);
}
fvec_unlock(self);
*min = vmin;
*max = vmax;
+ *mean = vmean;
}
static void
+fvec_gui_wave_get_two_min_max(void *obj, void *context, int onset, int rangeStartIndex, int rangeSize, double *min1, double *max1, double *min2, double *max2)
+{
+ fvec_t *self = (fvec_t *)obj;
+ float *p;
+ int size, stride;
+ double vmax1 = 0.0;
+ double vmin1 = 0.0;
+ double vmax2 = 0.0;
+ double vmin2 = 0.0;
+ int start, end, i;
+ float val;
+
+ fvec_vector_lock(self, &p, &size, &stride);
+
+ if(size > 0)
+ {
+ start = (rangeStartIndex > 0) ? rangeStartIndex : 0;
+ end = (rangeSize > 0) ? start+rangeSize : size;
+
+ for(i = start; i < end && i < size; i++)
+ {
+ val = p[i * stride];
+ if(val > vmax1) vmax1 = val;
+ if(val < vmin1) vmin1 = val;
+ if(val < vmin2 && val > vmin1) vmin2 = val;
+ if(val > vmax2 && val < vmax1) vmax2 = val;
+ }
+ }
+ fvec_unlock(self);
+
+ *max1 = vmax1;
+ *min1 = vmin1;
+ *max2 = vmax2;
+ *min2 = vmin2;
+}
+
+static void
fvec_gui_wave_interpolate(void *obj, void *context, int onset, int start_idx, int end_idx, double start_val, double end_val)
{
fvec_t *self = (fvec_t *)obj;
@@ -3771,7 +3934,8 @@
fvec_gui_interface_fvec.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_fvec.getPointer = fvec_gui_wave_get_ptr;
fvec_gui_interface_fvec.releasePointer = fvec_gui_wave_release_ptr;
- fvec_gui_interface_fvec.getMinMaxValues = fvec_gui_wave_get_min_max_values;
+ fvec_gui_interface_fvec.getMinMaxMean = fvec_gui_wave_get_min_max_mean;
+ fvec_gui_interface_fvec.getTwoMinMax = fvec_gui_wave_get_two_min_max;
fvec_gui_interface_fvec.interpolate = fvec_gui_wave_interpolate;
fvec_gui_interface_fvec.increment = fvec_gui_wave_increment;
fvec_gui_interface_fvec.set = fvec_gui_wave_set;
@@ -3800,7 +3964,7 @@
fvec_gui_interface_wave.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_wave.getPointer = fvec_gui_wave_get_ptr;
fvec_gui_interface_wave.releasePointer = fvec_gui_wave_release_ptr;
- fvec_gui_interface_wave.getMinMaxValues = fvec_gui_wave_get_min_max_values;
+ fvec_gui_interface_wave.getMinMaxMean = fvec_gui_wave_get_min_max_mean;
fvec_gui_interface_wave.interpolate = fvec_gui_wave_interpolate;
fvec_gui_interface_wave.increment = fvec_gui_wave_increment;
fvec_gui_interface_wave.set = fvec_gui_wave_set;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2019-05-22 10:12:07
|
Revision: 3741
http://sourceforge.net/p/ftm/code/3741
Author: borghesi
Date: 2019-05-22 09:55:28 +0000 (Wed, 22 May 2019)
Log Message:
-----------
fvec: minor change
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/fvec.c
trunk/ftm/ftmlib/classes/fvec.h
Modified: trunk/ftm/ftmlib/classes/fvec.c
===================================================================
--- trunk/ftm/ftmlib/classes/fvec.c 2019-05-22 09:54:44 UTC (rev 3740)
+++ trunk/ftm/ftmlib/classes/fvec.c 2019-05-22 09:55:28 UTC (rev 3741)
@@ -520,6 +520,27 @@
return ABS_MAX;
}
+float
+fvec_vector_get_mean(float *ptr, int size, int stride)
+{
+ if(size > 0)
+ {
+ float mean = 0;
+ float val;
+ int i;
+
+ for (i=stride; i<size*stride; i+=stride)
+ {
+ val = ptr[i];
+ mean += val*val;
+ }
+ mean = sqrt(mean/size);
+
+ return mean;
+ }
+
+ return ABS_MAX;
+}
/********************************************************************
*
* (thread-safe) class functions
Modified: trunk/ftm/ftmlib/classes/fvec.h
===================================================================
--- trunk/ftm/ftmlib/classes/fvec.h 2019-05-22 09:54:44 UTC (rev 3740)
+++ trunk/ftm/ftmlib/classes/fvec.h 2019-05-22 09:55:28 UTC (rev 3741)
@@ -306,6 +306,7 @@
FTS_API float fvec_vector_get_min(float *ptr, int size, int stride);
FTS_API float fvec_vector_get_max(float *ptr, int size, int stride);
+FTS_API float fvec_vector_get_mean(float *ptr, int size, int stride);
/**
* @brief
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2018-12-07 10:04:06
|
Revision: 3739
http://sourceforge.net/p/ftm/code/3739
Author: borghesi
Date: 2018-12-07 10:04:01 +0000 (Fri, 07 Dec 2018)
Log Message:
-----------
ftm.editor: update of gui interfaces to the last changes in ftmeditor interfaces
Modified Paths:
--------------
trunk/ftm/ftmlib/classes/ftmdatagui.c
Modified: trunk/ftm/ftmlib/classes/ftmdatagui.c
===================================================================
--- trunk/ftm/ftmlib/classes/ftmdatagui.c 2018-12-06 13:32:22 UTC (rev 3738)
+++ trunk/ftm/ftmlib/classes/ftmdatagui.c 2018-12-07 10:04:01 UTC (rev 3739)
@@ -517,6 +517,9 @@
((imtr_guiInterface *)&bpf_gui_interface_bpf)->lockData = bpf_lock_data;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->unlockData = bpf_unlock_data;
((imtr_guiInterface *)&bpf_gui_interface_bpf)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
bpf_gui_interface_bpf.getSize = bpf_gui_bpf_get_size;
bpf_gui_interface_bpf.getPoint = bpf_gui_bpf_get_point;
@@ -670,6 +673,9 @@
((imtr_guiInterface *)&bpf_gui_interface_matrix)->lockData = bpf_lock_data;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->unlockData = bpf_unlock_data;
((imtr_guiInterface *)&bpf_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&bpf_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
bpf_gui_interface_matrix.getMatrixConfig = bpf_gui_matrix_get_matrix_config;
bpf_gui_interface_matrix.getRows = bpf_gui_matrix_get_rows;
@@ -931,6 +937,9 @@
((imtr_guiInterface *)&dict_gui_interface_matrix)->lockData = dict_lock_data;
((imtr_guiInterface *)&dict_gui_interface_matrix)->unlockData = dict_unlock_data;
((imtr_guiInterface *)&dict_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&dict_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
dict_gui_interface_matrix.getMatrixConfig = dict_gui_matrix_get_matrix_config;
dict_gui_interface_matrix.getRows = dict_gui_matrix_get_rows;
@@ -1384,6 +1393,9 @@
((imtr_guiInterface *)&mat_gui_interface_markers)->lockData = mat_lock_data;
((imtr_guiInterface *)&mat_gui_interface_markers)->unlockData = mat_unlock_data;
((imtr_guiInterface *)&mat_gui_interface_markers)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&mat_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
mat_gui_interface_markers.isVector = mat_gui_markers_is_vector;
mat_gui_interface_markers.getSize = mat_gui_markers_get_size;
@@ -1645,6 +1657,9 @@
((imtr_guiInterface *)&mat_gui_interface_score)->lockData = mat_lock_data;
((imtr_guiInterface *)&mat_gui_interface_score)->unlockData = mat_unlock_data;
((imtr_guiInterface *)&mat_gui_interface_score)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&mat_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
mat_gui_interface_score.isVector = mat_gui_score_is_vector;
mat_gui_interface_score.getSize = mat_gui_score_get_size;
@@ -1896,6 +1911,9 @@
((imtr_guiInterface *)&mat_gui_interface_matrix)->lockData = mat_lock_data;
((imtr_guiInterface *)&mat_gui_interface_matrix)->unlockData = mat_unlock_data;
((imtr_guiInterface *)&mat_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&mat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
mat_gui_interface_matrix.getMatrixConfig = mat_gui_matrix_get_matrix_config;
mat_gui_interface_matrix.getRows = mat_gui_matrix_get_rows;
@@ -2113,7 +2131,11 @@
((imtr_guiInterface *)&fmat_gui_interface_fvec)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_fvec)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
+
fmat_gui_interface_fvec.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_fvec.getPointer = fmat_gui_wave_get_ptr;
fmat_gui_interface_fvec.releasePointer = fmat_gui_wave_release_ptr;
@@ -2139,6 +2161,9 @@
((imtr_guiInterface *)&fmat_gui_interface_wave)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_wave)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_wave)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_wave.getSize = fmat_gui_wave_get_size;
fmat_gui_interface_wave.getPointer = fmat_gui_wave_get_ptr;
@@ -2289,6 +2314,9 @@
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multiwave)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_multiwave.getWavesNum = fmat_gui_multiwave_get_waves_num;
fmat_gui_interface_multiwave.getSize = fmat_gui_multiwave_get_size;
@@ -2494,6 +2522,9 @@
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_sonogram.getLength = fmat_gui_sonogram_get_length;
fmat_gui_interface_sonogram.getSpectrumSize = fmat_gui_sonogram_get_spectrum_size;
@@ -2799,6 +2830,9 @@
((imtr_guiInterface *)&fmat_gui_interface_traces)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_traces)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_traces)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_traces.isVector = fmat_gui_traces_is_vector;
fmat_gui_interface_traces.isTimeTagged = fmat_gui_traces_is_time_tagged;
@@ -2995,6 +3029,9 @@
((imtr_guiInterface *)&fmat_gui_interface_pixels)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_pixels)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_pixels)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_pixels.getLength = fmat_gui_pixels_get_length;
fmat_gui_interface_pixels.getSize = fmat_gui_pixels_get_size;
@@ -3156,6 +3193,9 @@
((imtr_guiInterface *)&fmat_gui_interface_bpf)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_bpf)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_bpf.getSize = fmat_gui_bpf_get_size;
fmat_gui_interface_bpf.getPoint = fmat_gui_bpf_get_point;
@@ -3389,6 +3429,9 @@
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_multibpf)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_multibpf.getSize = fmat_gui_multibpf_get_size;
fmat_gui_interface_multibpf.getBpfNum = fmat_gui_multibpf_get_bpf_num;
@@ -3541,6 +3584,9 @@
((imtr_guiInterface *)&fmat_gui_interface_matrix)->lockData = fmat_lock_data;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->unlockData = fmat_unlock_data;
((imtr_guiInterface *)&fmat_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fmat_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
fmat_gui_interface_matrix.getMatrixConfig = fmat_gui_matrix_get_matrix_config;
fmat_gui_interface_matrix.getRows = fmat_gui_matrix_get_rows;
@@ -3718,6 +3764,9 @@
((imtr_guiInterface *)&fvec_gui_interface_fvec)->lockData = fvec_lock_data;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->unlockData = fvec_unlock_data;
((imtr_guiInterface *)&fvec_gui_interface_fvec)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_fvec)->getBufferIndex = fts_get_buffer_index_default;
fvec_gui_interface_fvec.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_fvec.getPointer = fvec_gui_wave_get_ptr;
@@ -3744,6 +3793,9 @@
((imtr_guiInterface *)&fvec_gui_interface_wave)->lockData = fvec_lock_data;
((imtr_guiInterface *)&fvec_gui_interface_wave)->unlockData = fvec_unlock_data;
((imtr_guiInterface *)&fvec_gui_interface_wave)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_wave)->getBufferIndex = fts_get_buffer_index_default;
fvec_gui_interface_wave.getSize = fvec_gui_wave_get_size;
fvec_gui_interface_wave.getPointer = fvec_gui_wave_get_ptr;
@@ -3854,6 +3906,9 @@
((imtr_guiInterface *)&fvec_gui_interface_matrix)->lockData = fvec_lock_data;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->unlockData = fvec_unlock_data;
((imtr_guiInterface *)&fvec_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&fvec_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
fvec_gui_interface_matrix.getMatrixConfig = fvec_gui_matrix_get_matrix_config;
fvec_gui_interface_matrix.getRows = fvec_gui_matrix_get_rows;
@@ -4121,6 +4176,9 @@
((imtr_guiInterface *)&sequence_gui_interface_bpf)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_bpf)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_bpf.getSize = sequence_gui_bpf_get_size;
sequence_gui_interface_bpf.getPoint = sequence_gui_bpf_get_point;
@@ -4831,6 +4889,9 @@
((imtr_guiInterface *)&sequence_gui_interface_markers)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_markers)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_markers)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_markers.isVector = sequence_gui_markers_is_vector;
sequence_gui_interface_markers.getSize = sequence_gui_markers_get_size;
@@ -5138,6 +5199,9 @@
((imtr_guiInterface *)&sequence_gui_interface_score)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_score)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_score)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_score.isVector = sequence_gui_score_is_vector;
sequence_gui_interface_score.getSize = sequence_gui_score_get_size;
@@ -5673,6 +5737,9 @@
((imtr_guiInterface *)&sequence_gui_interface_matrix)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_matrix.getMatrixConfig = sequence_gui_matrix_get_matrix_config;
sequence_gui_interface_matrix.getRows = sequence_gui_matrix_get_rows;
@@ -6048,6 +6115,9 @@
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_sonogram.getLength = sequence_gui_sonogram_get_length;
sequence_gui_interface_sonogram.getSpectrumSize = sequence_gui_sonogram_get_spectrum_size;
@@ -6370,6 +6440,9 @@
((imtr_guiInterface *)&sequence_gui_interface_traces)->lockData = sequence_lock_data;
((imtr_guiInterface *)&sequence_gui_interface_traces)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&sequence_gui_interface_traces)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&sequence_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
sequence_gui_interface_traces.isVector = sequence_gui_traces_is_vector;
sequence_gui_interface_traces.isTimeTagged = sequence_gui_traces_is_time_tagged;
@@ -6647,6 +6720,9 @@
((imtr_guiInterface *)&track_gui_interface_bpf)->lockData = track_lock_data;
((imtr_guiInterface *)&track_gui_interface_bpf)->unlockData = track_unlock_data;
((imtr_guiInterface *)&track_gui_interface_bpf)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_bpf)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_bpf.getSize = track_gui_bpf_get_size;
track_gui_interface_bpf.getPoint = track_gui_bpf_get_point;
@@ -6994,6 +7070,9 @@
((imtr_guiInterface *)&track_gui_interface_sonogram)->lockData = track_lock_data;
((imtr_guiInterface *)&track_gui_interface_sonogram)->unlockData = track_unlock_data;
((imtr_guiInterface *)&track_gui_interface_sonogram)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_sonogram)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_sonogram.getLength = track_gui_sonogram_get_length;
track_gui_interface_sonogram.getSpectrumSize = track_gui_sonogram_get_spectrum_size;
@@ -7295,6 +7374,9 @@
((imtr_guiInterface *)&track_gui_interface_traces)->lockData = sequence_lock_data;
((imtr_guiInterface *)&track_gui_interface_traces)->unlockData = sequence_unlock_data;
((imtr_guiInterface *)&track_gui_interface_traces)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_traces)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_traces.isVector = track_gui_traces_is_vector;
track_gui_interface_traces.isTimeTagged = track_gui_traces_is_time_tagged;
@@ -7575,6 +7657,9 @@
((imtr_guiInterface *)&track_gui_interface_score)->lockData = track_lock_data;
((imtr_guiInterface *)&track_gui_interface_score)->unlockData = track_unlock_data;
((imtr_guiInterface *)&track_gui_interface_score)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_score)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_score)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_score)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_score.isVector = track_gui_score_is_vector;
track_gui_interface_score.getSize = track_gui_score_get_size;
@@ -8295,6 +8380,9 @@
((imtr_guiInterface *)&track_gui_interface_markers)->lockData = track_lock_data;
((imtr_guiInterface *)&track_gui_interface_markers)->unlockData = track_unlock_data;
((imtr_guiInterface *)&track_gui_interface_markers)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_markers)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_markers.isVector = track_gui_markers_is_vector;
track_gui_interface_markers.getSize = track_gui_markers_get_size;
@@ -8818,6 +8906,9 @@
((imtr_guiInterface *)&track_gui_interface_matrix)->lockData = track_lock_data;
((imtr_guiInterface *)&track_gui_interface_matrix)->unlockData = track_unlock_data;
((imtr_guiInterface *)&track_gui_interface_matrix)->getDefaultConfig = fts_empty_default_config;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->getNumBuffers = fts_get_num_buffers_default;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferObject = fts_get_buffer_object_default;
+ ((imtr_guiInterface *)&track_gui_interface_matrix)->getBufferIndex = fts_get_buffer_index_default;
track_gui_interface_matrix.getMatrixConfig = track_gui_matrix_get_matrix_config;
track_gui_interface_matrix.getRows = track_gui_matrix_get_rows;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2018-12-06 13:32:26
|
Revision: 3738
http://sourceforge.net/p/ftm/code/3738
Author: diemo
Date: 2018-12-06 13:32:22 +0000 (Thu, 06 Dec 2018)
Log Message:
-----------
v2.7.3
Modified Paths:
--------------
trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
trunk/ftm/distrib/ReleaseNotes.txt
Modified: trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
===================================================================
--- trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2018-12-06 13:31:55 UTC (rev 3737)
+++ trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2018-12-06 13:32:22 UTC (rev 3738)
@@ -2745,11 +2745,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"05/2018\\\"";
+ VERSION_DATE = "\\\"12/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 2;
+ VERSION_RELEASE = 3;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug_optimised;
@@ -2967,11 +2967,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"05/2018\\\"";
+ VERSION_DATE = "\\\"12/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 2;
+ VERSION_RELEASE = 3;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug;
@@ -3043,11 +3043,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"05/2018\\\"";
+ VERSION_DATE = "\\\"12/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 2;
+ VERSION_RELEASE = 3;
VERSION_TAG = "\\\"64bit\\\"";
WARNING_LDFLAGS = "";
};
@@ -3303,11 +3303,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"05/2018\\\"";
+ VERSION_DATE = "\\\"12/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 2;
+ VERSION_RELEASE = 3;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug_harder;
Modified: trunk/ftm/distrib/ReleaseNotes.txt
===================================================================
--- trunk/ftm/distrib/ReleaseNotes.txt 2018-12-06 13:31:55 UTC (rev 3737)
+++ trunk/ftm/distrib/ReleaseNotes.txt 2018-12-06 13:32:22 UTC (rev 3738)
@@ -7,6 +7,12 @@
*
____________________________________________________
+RELEASE NOTES for FTM & Co 2.7.3 (06/12/2018)
+
+ftm.object:
+- fix excessive memory and CPU consumption on Max7
+
+____________________________________________________
RELEASE NOTES for FTM & Co 2.7.2 (23/05/2018)
ftmlib:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2018-12-06 13:31:58
|
Revision: 3737
http://sourceforge.net/p/ftm/code/3737
Author: diemo
Date: 2018-12-06 13:31:55 +0000 (Thu, 06 Dec 2018)
Log Message:
-----------
use NOGOOD macro to check valid toplevel patcher (not good for catching scope bug)
Modified Paths:
--------------
trunk/ftm/ftmlib/max5/maxpat.c
Modified: trunk/ftm/ftmlib/max5/maxpat.c
===================================================================
--- trunk/ftm/ftmlib/max5/maxpat.c 2018-12-06 13:26:09 UTC (rev 3736)
+++ trunk/ftm/ftmlib/max5/maxpat.c 2018-12-06 13:31:55 UTC (rev 3737)
@@ -570,12 +570,12 @@
{
t_object *parent;
- if(maxpat == NULL)
+ if (maxpat == NULL || NOGOOD(maxpat))
return NULL;
parent = patcher_get_parent(maxpat);
- while(maxpat != NULL && !patcher_is_toplevel(maxpat) && parent != NULL)
+ while (maxpat != NULL && !patcher_is_toplevel(maxpat) && parent != NULL)
{
maxpat = parent;
parent = patcher_get_parent(maxpat);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2018-12-06 13:26:12
|
Revision: 3736
http://sourceforge.net/p/ftm/code/3736
Author: diemo
Date: 2018-12-06 13:26:09 +0000 (Thu, 06 Dec 2018)
Log Message:
-----------
jfont_destroy after every jfont_create
Modified Paths:
--------------
trunk/ftm/externals/max5/ftm.mess.c
Modified: trunk/ftm/externals/max5/ftm.mess.c
===================================================================
--- trunk/ftm/externals/max5/ftm.mess.c 2018-12-04 10:41:34 UTC (rev 3735)
+++ trunk/ftm/externals/max5/ftm.mess.c 2018-12-06 13:26:09 UTC (rev 3736)
@@ -503,7 +503,8 @@
line_length++;
}
}
-
+
+ jfont_destroy(jf);
*num_lines = numlines;
*max_line_width = max_width;
*text_height = numlines * line_height;
@@ -532,6 +533,8 @@
if(width > max)
max = width;
}
+
+ jfont_destroy(jf);
return max;
}
@@ -553,6 +556,7 @@
jfont_text_measure(jf, fts_symbol_name(empty_mess_text), &width, &height);
if(width < 60) width = 60;
}
+ jfont_destroy(jf);
if (self->presentation)
jbox_get_presentation_rect((t_object *) self, &rect);
@@ -580,6 +584,7 @@
t_rect rect;
t_jfont *jf = jfont_create(jbox_get_fontname((t_object *)self)->s_name, (t_jgraphics_font_slant)jbox_get_font_slant((t_object *)self), (t_jgraphics_font_weight)jbox_get_font_weight((t_object *)self), jbox_get_fontsize((t_object *)self));
jfont_text_measure(jf, self->text.ptr, &width, &height);
+ jfont_destroy(jf);
if(self->n_lines <= 1)
min_width = width + 4;
@@ -619,6 +624,7 @@
text_len = (int)strlen(currenttext);
ftmmess_getNumlinesAndLength_from_string(self, currenttext, &numlines, &textwidth, &textheight);
jfont_text_measure(jf, "w", &incr_w, &incr_h);
+ jfont_destroy(jf);
rect.x = old_rect->x;
rect.y = old_rect->y;
@@ -2025,6 +2031,7 @@
jf = jfont_create(fn->s_name, JGRAPHICS_FONT_SLANT_NORMAL, JGRAPHICS_FONT_WEIGHT_NORMAL, fs);
jfont_text_measure(jf, fts_symbol_name(empty_mess_text), &width, &height);
+ jfont_destroy(jf);
rect.width = 0;
rect.height = 0;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bor...@us...> - 2018-12-04 10:41:37
|
Revision: 3735
http://sourceforge.net/p/ftm/code/3735
Author: borghesi
Date: 2018-12-04 10:41:34 +0000 (Tue, 04 Dec 2018)
Log Message:
-----------
ftm.object: fixed resize editing description or name
Modified Paths:
--------------
trunk/ftm/externals/max5/ftm.object.c
Modified: trunk/ftm/externals/max5/ftm.object.c
===================================================================
--- trunk/ftm/externals/max5/ftm.object.c 2018-11-28 14:14:28 UTC (rev 3734)
+++ trunk/ftm/externals/max5/ftm.object.c 2018-12-04 10:41:34 UTC (rev 3735)
@@ -1,4 +1,3 @@
-asdf
/*
* FTM externals
* Copyright (C) 2004 by IRCAM-Centre Georges Pompidou, Paris, France.
@@ -40,15 +39,15 @@
/* debug scope console printouts */
#define DEBUG_FTM_OBJECT 0
-#ifndef WIN32
-# if DEBUG_FTM_OBJECT && defined(DEBUG)
-# define debug_post(args...) post(args)
-# else
-# define debug_post(args...)
-# endif
+#ifdef WIN32
+static void debug_post(const char *format, ...){}
#else
-static void debug_post(const char *format, ...){}
+#if DEBUG_FTM_OBJECT && defined(DEBUG)
+#define debug_post(args...) post(args)
+#else
+#define debug_post(args...)
#endif
+#endif
#define MAX_CHARS 2048
@@ -248,36 +247,44 @@
char *name = ftmobj_str_name(self);
char *sep = ftmobj_str_separator(self);
t_size new_size;
- double width, height;
+ double width, height, empty_width, empty_height;
t_jfont *jf = jfont_create(jbox_get_fontname((t_object *)self)->s_name, (t_jgraphics_font_slant)jbox_get_font_slant((t_object *)self), (t_jgraphics_font_weight)jbox_get_font_weight((t_object *)self), jbox_get_fontsize((t_object *)self));
char text[512];
snprintf(text, 512, "%s %s %s ", description, sep, name);
- jfont_text_measure(jf, text, &width, &height);
+ jfont_text_measure(jf, text, &width, &height);
+ jfont_text_measure(jf, fts_symbol_name(sym_empty_object_text), &empty_width, &empty_height);
jfont_destroy(jf);
+
+ if(width < empty_width) width = empty_width;
+
new_size.height = height + 6;
new_size.width = width + 8;
if (self->activeview && patcherview_get_presentation(self->activeview) != 0)
{
- t_size old_size;
- jbox_get_presentation_size((t_object *) self, &old_size);
+ t_rect bounds;
+ jbox_get_presentation_rect((t_object *) self, &bounds);
- if (old_size.width != new_size.width || old_size.height != new_size.height)
+ if (bounds.width != new_size.width || bounds.height != new_size.height)
{
- jbox_set_presentation_size((t_object *) self, &new_size);
+ bounds.width = new_size.width;
+ bounds.height = new_size.height;
+ jbox_set_presentation_rect((t_object *) self, &bounds);
jbox_redraw((t_jbox *)self);
}
}
else
{
- t_size old_size;
- jbox_get_patching_size((t_object *) self, &old_size);
-
- if (old_size.width != new_size.width || old_size.height != new_size.height)
+ t_rect bounds;
+ jbox_get_patching_rect((t_object *) self, &bounds);
+
+ if (bounds.width != new_size.width || bounds.height != new_size.height)
{
- jbox_set_patching_size((t_object *) self, &new_size);
+ bounds.width = new_size.width;
+ bounds.height = new_size.height;
+ jbox_set_patching_rect((t_object *) self, &bounds);
jbox_redraw((t_jbox *)self);
}
}
@@ -286,12 +293,14 @@
static void
ftmobj_resize_to_current_text(ftmobj_t *self)
{
- t_size current_size, new_size;
+ t_rect current_bounds;
+ t_size new_size;
long textsize = 0;
char *currenttext = NULL;
int text_len;
double curr_text_width, curr_text_height;
double ot_width, ot_height;
+ double empty_width, empty_height;
int width;
double incr_w, incr_h;
char txt[512];
@@ -300,16 +309,17 @@
bool presentation = self->activeview ? patcherview_get_presentation(self->activeview) != 0 : 0;
if (presentation)
- jbox_get_presentation_size((t_object *) self, ¤t_size);
+ jbox_get_presentation_rect((t_object *) self, ¤t_bounds);
else
- jbox_get_patching_size((t_object *) self, ¤t_size);
+ jbox_get_patching_rect((t_object *) self, ¤t_bounds);
object_method(textfield, gensym("gettextptr"), ¤ttext, &textsize);
text_len = (int)strlen(currenttext);
jfont_text_measure(jf, currenttext, &curr_text_width, &curr_text_height);
jfont_text_measure(jf, "w", &incr_w, &incr_h);
+ jfont_text_measure(jf, fts_symbol_name(sym_empty_object_text), &empty_width, &empty_height);
- new_size.height = curr_text_height + 4;
+ new_size.height = curr_text_height + 6;
if(self->edit_name == 1)
{
@@ -317,7 +327,7 @@
char *sep = ftmobj_str_separator(self);
snprintf(txt, 512, "%s %s ", description, sep);
- jfont_text_measure(jf, txt, &ot_width, &ot_height);
+ jfont_text_measure(jf, txt, &ot_width, &ot_height);
}
else
{
@@ -325,17 +335,20 @@
char *sep = ftmobj_str_separator(self);
snprintf(txt, 512, " %s %s", sep, name);
- jfont_text_measure(jf, txt, &ot_width, &ot_height);
+ jfont_text_measure(jf, txt, &ot_width, &ot_height);
}
width = (ot_width + 5) + (curr_text_width + 2);
- new_size.width = (width + incr_w < current_size.width) ? current_size.width : width + incr_w;
+ new_size.width = (width + incr_w < /*current_size.width*/empty_width) ? /*current_size.width*/empty_width : width + incr_w;
- if (new_size.width > current_size.width)
+ if (new_size.width > current_bounds.width)
{
+ current_bounds.width = new_size.width;
+ current_bounds.height = new_size.height;
+
if (presentation)
- jbox_set_presentation_size((t_object *) self, &new_size);
+ jbox_set_presentation_rect((t_object *) self, ¤t_bounds);
else
- jbox_set_patching_size((t_object *) self, &new_size);
+ jbox_set_patching_rect((t_object *) self, ¤t_bounds);
jbox_redraw((t_jbox *)self);
}
@@ -751,7 +764,11 @@
}
debug_post("textfield_deactivate edit_name %d text '%s'", self->edit_name, text);
- fts_symbol_t sym = fts_new_symbol(text);
+ fts_symbol_t sym;
+ if(text[0] != '\0')
+ sym = fts_new_symbol(text);
+ else
+ sym = sym_empty_description;
//MRO: end edit: copy edited (unreplaced) text into _init, parse and set replaced text internally
if(self->edit_name == 1)
@@ -979,7 +996,8 @@
char *sep = ftmobj_str_separator(self);
t_jfont *jf = jfont_create(jbox_get_fontname((t_object *)self)->s_name, (t_jgraphics_font_slant)jbox_get_font_slant((t_object *)self), (t_jgraphics_font_weight)jbox_get_font_weight((t_object *)self), jbox_get_fontsize((t_object *)self));
double width, height, min_width;
- t_size current_size, new_size;
+ t_rect current_bounds;
+ t_size new_size;
char text[512];
snprintf(text, 512, "%s %s %s ", description, sep, name);
@@ -990,17 +1008,20 @@
bool presentation = self->activeview ? patcherview_get_presentation(self->activeview) != 0 : 0;
if (presentation)
- jbox_get_presentation_size((t_object *) self, ¤t_size);
+ jbox_get_presentation_rect((t_object *) self, ¤t_bounds);
else
- jbox_get_patching_size((t_object *) self, ¤t_size);
+ jbox_get_patching_rect((t_object *) self, ¤t_bounds);
- new_size.width = current_size.width > min_width ? current_size.width : min_width;
+ new_size.width = current_bounds.width > min_width ? current_bounds.width : min_width;
new_size.height = height + 6;
+ current_bounds.width = new_size.width;
+ current_bounds.height = new_size.height;
+
if (presentation)
- jbox_set_presentation_size((t_object *) self, &new_size);
+ jbox_set_presentation_rect((t_object *) self, ¤t_bounds);
else
- jbox_set_patching_size((t_object *) self, &new_size);
+ jbox_set_patching_rect((t_object *) self, ¤t_bounds);
}
static t_max_err
@@ -1009,23 +1030,18 @@
ftmobj_t *self = (ftmobj_t *)b;
t_symbol *attrname;
- if (msg == gensym("attr_modified"))
- {
+ if (msg == gensym("attr_modified"))
+ {
t_atom *av = NULL;
long ac = 0;
attrname = (t_symbol *)object_method((t_object *)data, gensym("getname"));
-
+
if(attrname == gensym("fontname") || attrname == gensym("fontsize"))
ftmobj_fit_to_text(self);
- else if(attrname == gensym("patching_rect"))
+ else if(attrname == gensym("patching_rect") || attrname == gensym("patching_size"))
{
if(self->activated == 1 && sender == self && self->changing_size == 0)
- {
- t_atom a;
- self->changing_size = 1;
- atom_setobj(&a, (t_object *)self);
- defer_low(self,(method)ftmobj_resize_to_current_text, 0, 1, &a);
- }
+ ftmobj_resize_to_current_text(self);
if(self->activated == 0 && self->changing_size == 0)
{
self->changing_size = 1;
@@ -1032,7 +1048,7 @@
fix_height_and_width(self);
self->changing_size = 0;
}
- }
+ }
if(attrname == gensym("rect"))
{
if(sender == self->editor_view)
@@ -1046,15 +1062,15 @@
}
else if(attrname == gensym("editbox"))
{
- object_attr_getvalueof(sender, gensym("editbox"), &ac, &av);
+ object_attr_getvalueof(sender, gensym("editbox"), &ac, &av);
debug_post("ftmobj_notify msg %s attr %s", msg->s_name, attrname->s_name);
-
+
if(ac == 1 && atom_gettype(av) == A_OBJ && atom_getobj(av) == (t_object *)self)
{
int locked = patcherview_get_locked((t_object *)sender);
if(self->activated == 0 && !locked)
- textfield_activate_byclick(self, (t_object *)sender);
- else
+ textfield_activate_byclick(self, (t_object *)sender);
+ else
if(locked)//fix to avoid edition when object is double-clicked in runmode
{
t_atom arv;
@@ -1061,7 +1077,7 @@
object_method_typed( (t_object *)sender, gensym("endeditbox"), 0, NULL, &arv);
}
}
- else
+ else
{
if(self->activated == 1)
textfield_deactivate(self);
@@ -1075,26 +1091,26 @@
if (ac == 1 && atom_gettype(av) == A_LONG)
{
- int locked = (int)atom_getlong(av);
- debug_post(" locked %d description '%s' name '%s'", locked, ftmobj_str_description(self), ftmobj_str_name(self));
-
- if (locked == 0) // MRO unlocked
- { // reinstall original text in textfield with #1 for display and editing, (but keep replaced text in parsed description)
-
- textfield_init_bounds_and_text(self, self->edit_name, 1); // repaint textfield from description/name_init
- }
- else if (locked == 1) // avoid load lock == 255
- { // display replaced text with #1 transcoded to abstraction args
- textfield_init_bounds_and_text(self, self->edit_name, 0); // from description/name_init
- }
- debug_post("--> locked %d description '%s' name '%s'", locked, ftmobj_str_description(self), ftmobj_str_name(self));
+ int locked = (int)atom_getlong(av);
+ debug_post(" locked %d description '%s' name '%s'", locked, ftmobj_str_description(self), ftmobj_str_name(self));
+
+ if (locked == 0) // MRO unlocked
+ { // reinstall original text in textfield with #1 for display and editing, (but keep replaced text in parsed description)
+
+ textfield_init_bounds_and_text(self, self->edit_name, 1); // repaint textfield from description/name_init
+ }
+ else if (locked == 1) // avoid load lock == 255
+ { // display replaced text with #1 transcoded to abstraction args
+ textfield_init_bounds_and_text(self, self->edit_name, 0); // from description/name_init
+ }
+ debug_post("--> locked %d description '%s' name '%s'", locked, ftmobj_str_description(self), ftmobj_str_name(self));
}
- }
+ }
}
else if(msg == gensym("interface"))
{
if(data != NULL)
- self->editor_interface = (fts_symbol_t )data;
+ self->editor_interface = (fts_symbol_t )data;
}
else if(msg == gensym("free"))
{
@@ -2336,7 +2352,7 @@
}
else
{
- self->description_init = fts_s_empty_string;
+ self->description_init = /*fts_s_empty_string*/sym_empty_description;
self->persistence_init = ftm_context_is_persistent(&self->context);
}
@@ -2444,7 +2460,7 @@
CLASS_ATTR_DEFAULTNAME_SAVE_PAINT(_mc,"textcolor", 0, "0. 0. 0. 1.");
CLASS_ATTR_DEFAULT(_mc, "patching_rect", 0, "0. 0. 64. 18.");
- CLASS_ATTR_ACCESSORS(_mc, "patching_size", NULL, ftmobj_set_attribute_patching_size);
+ CLASS_ATTR_ACCESSORS(_mc, "patching_size", NULL, /*ftmobj_set_attribute_patching_size*/NULL);
CLASS_ATTR_SYM(_mc, "editor_interface", 0, ftmobj_t, editor_interface);
CLASS_ATTR_SAVE(_mc,"editor_interface", 0);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2018-11-28 14:14:31
|
Revision: 3734
http://sourceforge.net/p/ftm/code/3734
Author: diemo
Date: 2018-11-28 14:14:28 +0000 (Wed, 28 Nov 2018)
Log Message:
-----------
avoid runaway memory by doint jfont_destroy after every jfont_create,
start hunting down runaway CPU from ftmobj_fit_to_text called in a loop via defer_low in ftmobj_set_attribute_patching_size
Modified Paths:
--------------
trunk/ftm/externals/max5/ftm.object.c
Modified: trunk/ftm/externals/max5/ftm.object.c
===================================================================
--- trunk/ftm/externals/max5/ftm.object.c 2018-05-23 14:18:31 UTC (rev 3733)
+++ trunk/ftm/externals/max5/ftm.object.c 2018-11-28 14:14:28 UTC (rev 3734)
@@ -1,3 +1,4 @@
+asdf
/*
* FTM externals
* Copyright (C) 2004 by IRCAM-Centre Georges Pompidou, Paris, France.
@@ -254,15 +255,32 @@
snprintf(text, 512, "%s %s %s ", description, sep, name);
jfont_text_measure(jf, text, &width, &height);
+ jfont_destroy(jf);
new_size.height = height + 6;
new_size.width = width + 8;
if (self->activeview && patcherview_get_presentation(self->activeview) != 0)
- jbox_set_presentation_size((t_object *) self, &new_size);
+ {
+ t_size old_size;
+ jbox_get_presentation_size((t_object *) self, &old_size);
+
+ if (old_size.width != new_size.width || old_size.height != new_size.height)
+ {
+ jbox_set_presentation_size((t_object *) self, &new_size);
+ jbox_redraw((t_jbox *)self);
+ }
+ }
else
- jbox_set_patching_size((t_object *) self, &new_size);
-
- jbox_redraw((t_jbox *)self);
+ {
+ t_size old_size;
+ jbox_get_patching_size((t_object *) self, &old_size);
+
+ if (old_size.width != new_size.width || old_size.height != new_size.height)
+ {
+ jbox_set_patching_size((t_object *) self, &new_size);
+ jbox_redraw((t_jbox *)self);
+ }
+ }
}
static void
@@ -321,6 +339,7 @@
jbox_redraw((t_jbox *)self);
}
+ jfont_destroy(jf);
self->changing_size = 0;
}
@@ -617,6 +636,7 @@
else
object_method(textfield, gensym("settext"), description); // set text to be drawn
}
+ jfont_destroy(jf);
}
static void
@@ -671,7 +691,8 @@
snprintf(text, 512, "%s %s", description, sep);
jfont_text_measure(jf, text, &width, &height);
-
+ jfont_destroy(jf);
+
// get zoom
object_attr_getvalueof(view, gensym("zoomfactor"), &ac, &at);
zoom = atom_getfloat(at);
@@ -965,6 +986,7 @@
jfont_text_measure(jf, text, &width, &height);
min_width = width + 8;
+ jfont_destroy(jf);
bool presentation = self->activeview ? patcherview_get_presentation(self->activeview) != 0 : 0;
if (presentation)
@@ -2200,7 +2222,8 @@
jf = jfont_create(fn->s_name, JGRAPHICS_FONT_SLANT_NORMAL, JGRAPHICS_FONT_WEIGHT_NORMAL, fs);
jfont_text_measure(jf, fts_symbol_name(sym_empty_object_text), &width, &height);
-
+ jfont_destroy(jf);
+
dictionary_getatoms(d, gensym("patching_rect"), &ac, &at);
rect.x = atom_getlong(at);
rect.y = atom_getlong(at + 1);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2018-05-23 14:18:35
|
Revision: 3733
http://sourceforge.net/p/ftm/code/3733
Author: diemo
Date: 2018-05-23 14:18:31 +0000 (Wed, 23 May 2018)
Log Message:
-----------
v2.7.2
Modified Paths:
--------------
trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
trunk/ftm/distrib/ReleaseNotes.txt
Modified: trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj
===================================================================
--- trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2018-05-23 14:02:09 UTC (rev 3732)
+++ trunk/ftm/build/max5/osx-macho/ftmlib.xcodeproj/project.pbxproj 2018-05-23 14:18:31 UTC (rev 3733)
@@ -2745,11 +2745,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"03/2018\\\"";
+ VERSION_DATE = "\\\"05/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 1;
+ VERSION_RELEASE = 2;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug_optimised;
@@ -2967,11 +2967,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"03/2018\\\"";
+ VERSION_DATE = "\\\"05/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 1;
+ VERSION_RELEASE = 2;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug;
@@ -3043,11 +3043,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"03/2018\\\"";
+ VERSION_DATE = "\\\"05/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 1;
+ VERSION_RELEASE = 2;
VERSION_TAG = "\\\"64bit\\\"";
WARNING_LDFLAGS = "";
};
@@ -3303,11 +3303,11 @@
SNDFILE_LIBS = "$(SNDFILE_DIR)/macos/libFLAC.a $(SNDFILE_DIR)/macos/libogg.a $(SNDFILE_DIR)/macos/libsndfile.a $(SNDFILE_DIR)/macos/libvorbis.a $(SNDFILE_DIR)/macos/libvorbisenc.a";
SYS_FRAMEWORKS = "-framework Accelerate -framework Carbon";
VECLIB_FRAMEWORK_DIR = /System/Library/Frameworks/Accelerate.framework/Frameworks;
- VERSION_DATE = "\\\"03/2018\\\"";
+ VERSION_DATE = "\\\"05/2018\\\"";
VERSION_MACROS = "FTM_VERSION_MAJOR=$(VERSION_MAJOR) FTM_VERSION_MINOR=$(VERSION_MINOR) FTM_VERSION_RELEASE=$(VERSION_RELEASE) FTM_VERSION_TAG=$(VERSION_TAG) FTM_VERSION_DATE=$(VERSION_DATE)";
VERSION_MAJOR = 2;
VERSION_MINOR = 7;
- VERSION_RELEASE = 1;
+ VERSION_RELEASE = 2;
VERSION_TAG = "\\\"64bit\\\"";
};
name = Debug_harder;
Modified: trunk/ftm/distrib/ReleaseNotes.txt
===================================================================
--- trunk/ftm/distrib/ReleaseNotes.txt 2018-05-23 14:02:09 UTC (rev 3732)
+++ trunk/ftm/distrib/ReleaseNotes.txt 2018-05-23 14:18:31 UTC (rev 3733)
@@ -7,6 +7,18 @@
*
____________________________________________________
+RELEASE NOTES for FTM & Co 2.7.2 (23/05/2018)
+
+ftmlib:
+- fix crash when fvec lookup index data is nan (makes cataRT patches work again)
+
+ftm.mess:
+- fixed click graphical feedback
+
+ftm.editor:
+- reactivate pixel view
+
+____________________________________________________
RELEASE NOTES for FTM & Co 2.7.1 (16/03/2018)
ftmlib:
@@ -14,7 +26,7 @@
(issue #1385: https://forge.ircam.fr/p/ftm-and-co/issues/1385)
ftm.object, ftm.mess:
-- observe now presentation mode position
+- observe presentation mode position
____________________________________________________
RELEASE NOTES for FTM & Co 2.7.0 (30/12/2016)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|