From 2c4278db6ead5c27e30a3000097ed898c968534e Mon Sep 17 00:00:00 2001
From: Samo Penic <samo.penic@gmail.com>
Date: Sat, 09 Mar 2019 19:45:22 +0000
Subject: [PATCH] Added direct force plugin and fixes in stretching energy

---
 src/main.c |   32 +++++++++++++++++++++++++-------
 1 files changed, 25 insertions(+), 7 deletions(-)

diff --git a/src/main.c b/src/main.c
index d820471..ecf9678 100644
--- a/src/main.c
+++ b/src/main.c
@@ -28,12 +28,30 @@
 int main(int argv, char *argc[]){
 	ts_char *plugin0 = (ts_char *)calloc(255,sizeof(ts_char));
 	ts_char *plugin1 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin2 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin3 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin4 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin5 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin6 = (ts_char *)calloc(255,sizeof(ts_char));
+	ts_char *plugin7 = (ts_char *)calloc(255,sizeof(ts_char));
 	strcpy(plugin0,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/demoplugin.so");
 	strcpy(plugin1,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/vmdefaulthardconstraints.so");
-	ts_char **plugins=(ts_char **)calloc(2,sizeof(ts_char *));
-	*plugins=plugin0;
+	strcpy(plugin2,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/plane_confinement.so");
+	strcpy(plugin3,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/pressure.so");
+	strcpy(plugin4,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/constant_volume.so");
+	strcpy(plugin5,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/constant_area.so");
+	strcpy(plugin6,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/stretching_energy.so");
+	strcpy(plugin7,"/home/samo/programiranje/trisurf-ng/src/plugins/.libs/direct_force_on_c0.so");
+	ts_char **plugins=(ts_char **)calloc(8,sizeof(ts_char *));
+	plugins[0]=plugin0;
 	plugins[1]=plugin1;
-	ts_plugin_list *plist=init_plugin_list(plugins,2);
+	plugins[2]=plugin2;
+	plugins[3]=plugin3;
+	plugins[4]=plugin4;
+	plugins[5]=plugin5;
+	plugins[6]=plugin6;
+	plugins[7]=plugin7;
+	ts_plugin_list *plist=init_plugin_list(plugins,8);
 	//printf("%s", plist->chain->at_start->next->plugin->filename);
 	//ts_fprintf(stdout, "TRISURF in PRVI PLUGIN %s\n", plist->plugin[0]->details->name);
 	ts_vesicle *vesicle;
@@ -140,10 +158,10 @@
 
 	vesicle->plist=plist;
 /* Entry point for plugin after_vesicle_init() function */
-	ptr=plist->chain->after_vesicle_init;
-	while(ptr!=NULL){
-		ptr->plugin->function->after_vesicle_init(vesicle);
-		ptr=ptr->next;
+	vesicle->plist->pointer=vesicle->plist->chain->after_vesicle_init;
+	while(vesicle->plist->pointer!=NULL){
+		vesicle=vesicle->plist->pointer->plugin->function->after_vesicle_init(vesicle);
+		vesicle->plist->pointer=vesicle->plist->pointer->next;
 	}
 
 	run_simulation(vesicle, tape->mcsweeps, tape->inititer, tape->iterations, start_iteration);

--
Gitblit v1.9.3