counterpointFunc_act.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2010 by Luigi Negretti Lanner   *
00003  *   luigi.negrettilanner@gmail.com   *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU General Public License as published by  *
00007  *   the Free Software Foundation; either version 2 of the License, or     *
00008  *   (at your option) any later version.                                   *
00009  *                                                                         *
00010  *   This program is distributed in the hope that it will be useful,       *
00011  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00012  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00013  *   GNU General Public License for more details.                          *
00014  *                                                                         *
00015  *   You should have received a copy of the GNU General Public License     *
00016  *   along with this program; if not, write to the                         *
00017  *   Free Software Foundation, Inc.,                                       *
00018  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00019  ***************************************************************************/
00020 void ini_act()
00021 {
00022   init_act[0] = act_1->value();
00023   init_act[1] = act_2->value();
00024   init_act[2] = act_3->value();
00025   init_act[3] = act_4->value();
00026   init_act[4] = act_5->value();
00027   init_act[5] = act_6->value();
00028   init_act[6] = act_7->value();
00029   init_act[7] = act_8->value();
00030   init_act[8] = act_9->value();
00031   init_act[9] = act_10->value();
00032   init_act[10] = act_11->value();
00033   init_act[11] = act_12->value();
00034 }
00035 
00036 
00037 void contrappunto::act_lim_input()
00038 {
00039     act_min_ = (int)min_act->value();
00040     act_max_ = (int)max_act->value();
00041 }
00042 
00043 void contrappunto::subset_act()
00044 {
00045   formula formula;
00046   act_lim_input();
00047   //////////INITIALIZE ACT SUBSET/////
00048     int sub_tact_size = (int)act_max_ - (int)act_min_;
00049     float *sub_tact = new float[sub_tact_size];
00050 
00051     init_params();
00052     int indice = (int)act_min_;
00053     int i;
00054     for (i = 0; i < sub_tact_size; i++)
00055     {
00056         sub_tact[i] = tact[indice];
00057         indice++;
00058     }
00059   ///////////////////////////////////////////////////////////
00060   if (logic_a->value() == 1)
00061     {
00062       formula.trp_seq_tact();
00063       init_params();
00064       act_1->value(sub_tact[formula.j_act1]);
00065       {
00066       select_val(); //this function is in counterpointFunc.h
00067       act_1->value(act_1->value() + o);
00068       }
00069     }
00070 
00071   else if (logic_a->value() == 2)
00072     {
00073       formula.trp_seq_tact();
00074       init_params();
00075 
00076       act_1->value(sub_tact[formula.j_act1]);
00077       act_2->value(sub_tact[formula.j_act2]);
00078       {
00079       select_val(); //this function is in counterpointFunc.h
00080       act_1->value(act_1->value() + o);
00081       act_2->value(act_2->value() + o);
00082       }
00083     }
00084 
00085   else if (logic_a->value() == 3)
00086     {
00087       formula.trp_seq_tact();
00088       init_params();
00089 
00090       act_1->value(sub_tact[formula.j_act1]);
00091       act_2->value(sub_tact[formula.j_act2]);
00092       act_3->value(sub_tact[formula.j_act3]);
00093       {
00094       select_val(); //this function is in counterpointFunc.h
00095       act_1->value(act_1->value() + o);
00096       act_2->value(act_2->value() + o);
00097       act_3->value(act_3->value() + o);
00098       }
00099     }
00100 
00101     else if (logic_a->value() == 4)
00102     {
00103       formula.trp_seq_tact();
00104       init_params();
00105 
00106       act_1->value(sub_tact[formula.j_act1]);
00107       act_2->value(sub_tact[formula.j_act2]);
00108       act_3->value(sub_tact[formula.j_act3]);
00109       act_4->value(sub_tact[formula.j_act4]);
00110       {
00111       select_val(); //this function is in counterpointFunc.h
00112       act_1->value(act_1->value() + o);
00113       act_2->value(act_2->value() + o);
00114       act_3->value(act_3->value() + o);
00115       act_4->value(act_4->value() + o);
00116       }
00117     }
00118 
00119   else if (logic_a->value() == 5)
00120     {
00121       formula.trp_seq_tact();
00122       init_params();
00123 
00124       act_1->value(sub_tact[formula.j_act1]);
00125       act_2->value(sub_tact[formula.j_act2]);
00126       act_3->value(sub_tact[formula.j_act3]);
00127       act_4->value(sub_tact[formula.j_act4]);
00128       act_5->value(sub_tact[formula.j_act5]);
00129       {
00130       select_val(); //this function is in counterpointFunc.h
00131       act_1->value(act_1->value() + o);
00132       act_2->value(act_2->value() + o);
00133       act_3->value(act_3->value() + o);
00134       act_4->value(act_4->value() + o);
00135       act_5->value(act_5->value() + o);
00136       }
00137     }
00138 
00139     else if (logic_a->value() == 6)
00140     {
00141       formula.trp_seq_tact();
00142       init_params();
00143 
00144       act_1->value(sub_tact[formula.j_act1]);
00145       act_2->value(sub_tact[formula.j_act2]);
00146       act_3->value(sub_tact[formula.j_act3]);
00147       act_4->value(sub_tact[formula.j_act4]);
00148       act_5->value(sub_tact[formula.j_act5]);
00149       act_6->value(sub_tact[formula.j_act6]);
00150       {
00151       select_val(); //this function is in counterpointFunc.h
00152       act_1->value(act_1->value() + o);
00153       act_2->value(act_2->value() + o);
00154       act_3->value(act_3->value() + o);
00155       act_4->value(act_4->value() + o);
00156       act_5->value(act_5->value() + o);
00157       act_6->value(act_6->value() + o);
00158       }
00159     }
00160 
00161   else if (logic_a->value() == 7)
00162     {
00163       formula.trp_seq_tact();
00164       init_params();
00165 
00166       act_1->value(sub_tact[formula.j_act1]);
00167       act_2->value(sub_tact[formula.j_act2]);
00168       act_3->value(sub_tact[formula.j_act3]);
00169       act_4->value(sub_tact[formula.j_act4]);
00170       act_5->value(sub_tact[formula.j_act5]);
00171       act_6->value(sub_tact[formula.j_act6]);
00172       act_7->value(sub_tact[formula.j_act7]);
00173       {
00174       select_val(); //this function is in counterpointFunc.h
00175       act_1->value(act_1->value() + o);
00176       act_2->value(act_2->value() + o);
00177       act_3->value(act_3->value() + o);
00178       act_4->value(act_4->value() + o);
00179       act_5->value(act_5->value() + o);
00180       act_6->value(act_6->value() + o);
00181       act_7->value(act_7->value() + o);
00182       }
00183     }
00184 
00185   else if (logic_a->value() == 8)
00186     {
00187       formula.trp_seq_tact();
00188       init_params();
00189 
00190       act_1->value(sub_tact[formula.j_act1]);
00191       act_2->value(sub_tact[formula.j_act2]);
00192       act_3->value(sub_tact[formula.j_act3]);
00193       act_4->value(sub_tact[formula.j_act4]);
00194       act_5->value(sub_tact[formula.j_act5]);
00195       act_6->value(sub_tact[formula.j_act6]);
00196       act_7->value(sub_tact[formula.j_act7]);
00197       act_8->value(sub_tact[formula.j_act8]);
00198       {
00199       select_val(); //this function is in counterpointFunc.h
00200       act_1->value(act_1->value() + o);
00201       act_2->value(act_2->value() + o);
00202       act_3->value(act_3->value() + o);
00203       act_4->value(act_4->value() + o);
00204       act_5->value(act_5->value() + o);
00205       act_6->value(act_6->value() + o);
00206       act_7->value(act_7->value() + o);
00207       act_8->value(act_8->value() + o);
00208       }
00209     }
00210 
00211   else if (logic_a->value() == 9)
00212     {
00213       formula.trp_seq_tact();
00214       init_params();
00215 
00216       act_1->value(sub_tact[formula.j_act1]);
00217       act_2->value(sub_tact[formula.j_act2]);
00218       act_3->value(sub_tact[formula.j_act3]);
00219       act_4->value(sub_tact[formula.j_act4]);
00220       act_5->value(sub_tact[formula.j_act5]);
00221       act_6->value(sub_tact[formula.j_act6]);
00222       act_7->value(sub_tact[formula.j_act7]);
00223       act_8->value(sub_tact[formula.j_act8]);
00224       act_9->value(sub_tact[formula.j_act9]);
00225       {
00226       select_val(); //this function is in counterpointFunc.h
00227       act_1->value(act_1->value() + o);
00228       act_2->value(act_2->value() + o);
00229       act_3->value(act_3->value() + o);
00230       act_4->value(act_4->value() + o);
00231       act_5->value(act_5->value() + o);
00232       act_6->value(act_6->value() + o);
00233       act_7->value(act_7->value() + o);
00234       act_8->value(act_8->value() + o);
00235       act_9->value(act_9->value() + o);
00236       }
00237     }
00238 
00239   else if (logic_a->value() == 10)
00240     {
00241       formula.trp_seq_tact();
00242       init_params();
00243 
00244       act_1->value(sub_tact[formula.j_act1]);
00245       act_2->value(sub_tact[formula.j_act2]);
00246       act_3->value(sub_tact[formula.j_act3]);
00247       act_4->value(sub_tact[formula.j_act4]);
00248       act_5->value(sub_tact[formula.j_act5]);
00249       act_6->value(sub_tact[formula.j_act6]);
00250 
00251       act_7->value(sub_tact[formula.j_act7]);
00252       act_8->value(sub_tact[formula.j_act8]);
00253       act_9->value(sub_tact[formula.j_act9]);
00254       act_10->value(sub_tact[formula.j_act10]);
00255       {
00256       select_val(); //this function is in counterpointFunc.h
00257       act_1->value(act_1->value() + o);
00258       act_2->value(act_2->value() + o);
00259       act_3->value(act_3->value() + o);
00260       act_4->value(act_4->value() + o);
00261       act_5->value(act_5->value() + o);
00262       act_6->value(act_6->value() + o);
00263       act_7->value(act_7->value() + o);
00264       act_8->value(act_8->value() + o);
00265       act_9->value(act_9->value() + o);
00266       act_10->value(act_10->value() + o);
00267       }
00268     }
00269 
00270   else if (logic_a->value() == 11)
00271     {
00272       formula.trp_seq_tact();
00273       init_params();
00274 
00275       act_1->value(sub_tact[formula.j_act1]);
00276       act_2->value(sub_tact[formula.j_act2]);
00277       act_3->value(sub_tact[formula.j_act3]);
00278       act_4->value(sub_tact[formula.j_act4]);
00279       act_5->value(sub_tact[formula.j_act5]);
00280       act_6->value(sub_tact[formula.j_act6]);
00281       act_7->value(sub_tact[formula.j_act7]);
00282       act_8->value(sub_tact[formula.j_act8]);
00283       act_9->value(sub_tact[formula.j_act9]);
00284       act_10->value(sub_tact[formula.j_act10]);
00285       act_11->value(sub_tact[formula.j_act11]);
00286       {
00287       select_val(); //this function is in counterpointFunc.h
00288       act_1->value(act_1->value() + o);
00289       act_2->value(act_2->value() + o);
00290       act_3->value(act_3->value() + o);
00291       act_4->value(act_4->value() + o);
00292       act_5->value(act_5->value() + o);
00293       act_6->value(act_6->value() + o);
00294       act_7->value(act_7->value() + o);
00295       act_8->value(act_8->value() + o);
00296       act_9->value(act_9->value() + o);
00297       act_10->value(act_10->value() + o);
00298       act_11->value(act_11->value() + o);
00299       }
00300     }
00301 
00302   else if (logic_a->value() == 12)
00303     {
00304       formula.trp_seq_tact();
00305       init_params();
00306 
00307       act_1->value(sub_tact[formula.j_act1]);
00308       act_2->value(sub_tact[formula.j_act2]);
00309       act_3->value(sub_tact[formula.j_act3]);
00310       act_4->value(sub_tact[formula.j_act4]);
00311       act_5->value(sub_tact[formula.j_act5]);
00312       act_6->value(sub_tact[formula.j_act6]);
00313       act_7->value(sub_tact[formula.j_act7]);
00314       act_8->value(sub_tact[formula.j_act8]);
00315       act_9->value(sub_tact[formula.j_act9]);
00316       act_10->value(sub_tact[formula.j_act10]);
00317       act_11->value(sub_tact[formula.j_act11]);
00318       act_12->value(sub_tact[formula.j_act12]);
00319       {
00320       select_val(); //this function is in counterpointFunc.h
00321       act_1->value(act_1->value() + o);
00322       act_2->value(act_2->value() + o);
00323       act_3->value(act_3->value() + o);
00324       act_4->value(act_4->value() + o);
00325       act_5->value(act_5->value() + o);
00326       act_6->value(act_6->value() + o);
00327       act_7->value(act_7->value() + o);
00328       act_8->value(act_8->value() + o);
00329       act_9->value(act_9->value() + o);
00330       act_10->value(act_10->value() + o);
00331       act_11->value(act_11->value() + o);
00332       act_12->value(act_12->value() + o);
00333       }
00334     }
00335      delete [] sub_tact;
00336 }
00337 
00338 void contrappunto::init_act_serie()
00339 {
00340   if (bt_calc_act->value() == 1)
00341   {
00342     if (bt_enable_act->value() == 1)
00343     {
00344         subset_act();
00345     }
00346   }
00347     int i;
00348     ini_act();
00349     for (i = 0; i < 12; i++)
00350     {
00351       serie_act[i] = init_act[i];
00352     }
00353 }
00354 
00355 //INITIALIZE SERIES<<<<<<<<<
00356 
00357 //RETROGRADO>>>>>>>>
00358 
00359 void contrappunto::retroact()
00360 {
00361   if (bt_enable_act->value() == 1)
00362   {
00363   subset_act();
00364   }
00365   init_act_serie();
00366 
00367   int i;
00368   int s = 11;
00369 
00370   for (i=0;i<12;i++)
00371   {
00372     serie_manip[i] = serie_act[s];
00373     s--;
00374   }
00375 }
00376 
00377 
00378 void retro_act()
00379 {
00380   contrappunto ob;
00381   ob.retroact();
00382   act_1->value(ob.serie_manip[0]);
00383   act_2->value(ob.serie_manip[1]);
00384   act_3->value(ob.serie_manip[2]);
00385   act_4->value(ob.serie_manip[3]);
00386   act_5->value(ob.serie_manip[4]);
00387   act_6->value(ob.serie_manip[5]);
00388   act_7->value(ob.serie_manip[6]);
00389   act_8->value(ob.serie_manip[7]);
00390   act_9->value(ob.serie_manip[8]);
00391   act_10->value(ob.serie_manip[9]);
00392   act_11->value(ob.serie_manip[10]);
00393   act_12->value(ob.serie_manip[11]);
00394 }
00395 
00396 void retroact_cb(Fl_Widget*,void*)
00397 {
00398   retro_act();
00399 }
00400 
00401 //RETROGRADO<<<<<
00402 
00403 //CROCE<<<<<<<<<<<
00404 
00405 
00406 void contrappunto::croceact()
00407 {
00408   init_act_serie();
00409   serie_manip[0] = serie_act[11];
00410   serie_manip[1] = serie_act[0];
00411   serie_manip[2] = serie_act[10];
00412   serie_manip[3] = serie_act[1];
00413   serie_manip[4] = serie_act[9];
00414   serie_manip[5] = serie_act[2];
00415   serie_manip[6] = serie_act[8];
00416   serie_manip[7] = serie_act[3];
00417   serie_manip[8] = serie_act[7];
00418   serie_manip[9] = serie_act[4];
00419   serie_manip[10] = serie_act[6];
00420   serie_manip[11] = serie_act[5];
00421 }
00422 
00423 
00424 void croce_act()
00425 {
00426   contrappunto ob;
00427   ob.croceact();
00428   act_1->value(ob.serie_manip[0]);
00429   act_2->value(ob.serie_manip[1]);
00430   act_3->value(ob.serie_manip[2]);
00431   act_4->value(ob.serie_manip[3]);
00432   act_5->value(ob.serie_manip[4]);
00433   act_6->value(ob.serie_manip[5]);
00434   act_7->value(ob.serie_manip[6]);
00435   act_8->value(ob.serie_manip[7]);
00436   act_9->value(ob.serie_manip[8]);
00437   act_10->value(ob.serie_manip[9]);
00438   act_11->value(ob.serie_manip[10]);
00439   act_12->value(ob.serie_manip[11]);
00440 }
00441 
00442 void croceact_cb(Fl_Widget*,void*)
00443 {
00444   croce_act();
00445 }
00446 
00447 //CROCE<<<<<<<<<<<<<<
00448 
00449 //SLIDE>>>>>>>>>>>>>>
00450 
00451 void contrappunto::slideact()
00452 {
00453   init_act_serie();
00454   int i, s;
00455   i = 0;
00456   s = 1;
00457   for (i=0;i<11;i++)
00458   {
00459     serie_manip[i] = serie_act[s];
00460     s++;
00461   }
00462     serie_manip[11] = serie_act[0];
00463 }
00464 
00465 void slide_act()
00466 {
00467   contrappunto ob;
00468   ob.slideact();
00469   act_1->value(ob.serie_manip[0]);
00470   act_2->value(ob.serie_manip[1]);
00471   act_3->value(ob.serie_manip[2]);
00472   act_4->value(ob.serie_manip[3]);
00473   act_5->value(ob.serie_manip[4]);
00474   act_6->value(ob.serie_manip[5]);
00475   act_7->value(ob.serie_manip[6]);
00476   act_8->value(ob.serie_manip[7]);
00477   act_9->value(ob.serie_manip[8]);
00478   act_10->value(ob.serie_manip[9]);
00479   act_11->value(ob.serie_manip[10]);
00480   act_12->value(ob.serie_manip[11]);
00481 }
00482 
00483 void slideact_cb(Fl_Widget*,void*)
00484 {
00485   slide_act();
00486 }
00487 
00488 /////////////JUMP1
00489 
00490 void contrappunto::jump_oneact()
00491 {
00492   init_act_serie();
00493   serie_manip[0] = serie_act[1];
00494   serie_manip[1] = serie_act[3];
00495   serie_manip[2] = serie_act[5];
00496   serie_manip[3] = serie_act[7];
00497   serie_manip[4] = serie_act[9];
00498   serie_manip[5] = serie_act[11];
00499   serie_manip[6] = serie_act[0];
00500   serie_manip[7] = serie_act[2];
00501   serie_manip[8] = serie_act[4];
00502   serie_manip[9] = serie_act[6];
00503   serie_manip[10] = serie_act[8];
00504   serie_manip[11] = serie_act[10];
00505 }
00506 
00507 
00508 void jumpone_act()
00509 {
00510   contrappunto ob;
00511   ob.jump_oneact();
00512   act_1->value(ob.serie_manip[0]);
00513   act_2->value(ob.serie_manip[1]);
00514   act_3->value(ob.serie_manip[2]);
00515   act_4->value(ob.serie_manip[3]);
00516   act_5->value(ob.serie_manip[4]);
00517   act_6->value(ob.serie_manip[5]);
00518   act_7->value(ob.serie_manip[6]);
00519   act_8->value(ob.serie_manip[7]);
00520   act_9->value(ob.serie_manip[8]);
00521   act_10->value(ob.serie_manip[9]);
00522   act_11->value(ob.serie_manip[10]);
00523   act_12->value(ob.serie_manip[11]);
00524 
00525 }
00526 
00527 void jumpOneact_cb(Fl_Widget*,void*)
00528 {
00529   jumpone_act();
00530 }
00531 
00532 ///////////JUMP1
00533 

Generated on Sun Jul 1 20:29:36 2012 for Csmusgen by  doxygen 1.4.7