Tissue Forge C 0.2.1
Interactive, particle-based physics, chemistry and biology modeling and simulation environment
Loading...
Searching...
No Matches
tfCCellPolarity.h
1/*******************************************************************************
2 * This file is part of Tissue Forge.
3 * Copyright (c) 2022-2024 T.J. Sego
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as published
7 * by the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 *
18 ******************************************************************************/
19
20#ifndef _WRAPS_C_MODELS_CENTER_CELL_POLARITY_CELL_POLARITY_H_
21#define _WRAPS_C_MODELS_CENTER_CELL_POLARITY_CELL_POLARITY_H_
22
23#include <tf_port_c.h>
24
25#include <tfCParticle.h>
26#include <tfCForce.h>
27#include <tfCPotential.h>
28
29// Handles
30
32 unsigned int REGULAR;
33 unsigned int ISOTROPIC;
34 unsigned int ANISOTROPIC;
35};
36
42 void *tfObj;
43};
44
50 void *tfObj;
51};
52
58 void *tfObj;
59};
60
61
63// PolarContactType //
65
66
73CAPI_FUNC(HRESULT) tfPolarContactType_init(struct tfCellPolarityPolarContactTypeEnumHandle *handle);
74
75
77// PersistentForce //
79
80
89CAPI_FUNC(HRESULT) tfCellPolarityPersistentForce_init(struct tfCellPolarityPersistentForceHandle *handle, float sensAB, float sensPCP);
90
97CAPI_FUNC(HRESULT) tfCellPolarityPersistentForce_destroy(struct tfCellPolarityPersistentForceHandle *handle);
98
106CAPI_FUNC(HRESULT) tfCellPolarityPersistentForce_toBase(struct tfCellPolarityPersistentForceHandle *handle, tfForceHandle *baseHandle);
107
115CAPI_FUNC(HRESULT) tfCellPolarityPersistentForce_fromBase(tfForceHandle *baseHandle, struct tfCellPolarityPersistentForceHandle *handle);
116
117
119// ContactPotential //
121
122
138CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_init(
140 float cutoff,
141 float couplingFlat,
142 float couplingOrtho,
143 float couplingLateral,
144 float distanceCoeff,
145 unsigned int cType,
146 float mag,
147 float rate,
148 float bendingCoeff
149);
150
157CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_destroy(struct tfCellPolarityContactPotentialHandle *handle);
158
166CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_toBase(struct tfCellPolarityContactPotentialHandle *handle, tfPotentialHandle *baseHandle);
167
175CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_fromBase(struct tfPotentialHandle *baseHandle, struct tfCellPolarityContactPotentialHandle *handle);
176
184CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getCouplingFlat(struct tfCellPolarityContactPotentialHandle *handle, float *couplingFlat);
185
193CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setCouplingFlat(struct tfCellPolarityContactPotentialHandle *handle, float couplingFlat);
194
202CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getCouplingOrtho(struct tfCellPolarityContactPotentialHandle *handle, float *couplingOrtho);
203
211CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setCouplingOrtho(struct tfCellPolarityContactPotentialHandle *handle, float couplingOrtho);
212
220CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getCouplingLateral(struct tfCellPolarityContactPotentialHandle *handle, float *couplingLateral);
221
229CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setCouplingLateral(struct tfCellPolarityContactPotentialHandle *handle, float couplingLateral);
230
238CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getDistanceCoeff(struct tfCellPolarityContactPotentialHandle *handle, float *distanceCoeff);
239
247CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setDistanceCoeff(struct tfCellPolarityContactPotentialHandle *handle, float distanceCoeff);
248
256CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getCType(struct tfCellPolarityContactPotentialHandle *handle, unsigned int *cType);
257
265CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setCType(struct tfCellPolarityContactPotentialHandle *handle, unsigned int cType);
266
274CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getMag(struct tfCellPolarityContactPotentialHandle *handle, float *mag);
275
283CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setMag(struct tfCellPolarityContactPotentialHandle *handle, float mag);
284
292CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getRate(struct tfCellPolarityContactPotentialHandle *handle, float *rate);
293
301CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setRate(struct tfCellPolarityContactPotentialHandle *handle, float rate);
302
310CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_getBendingCoeff(struct tfCellPolarityContactPotentialHandle *handle, float *bendingCoeff);
311
319CAPI_FUNC(HRESULT) tfCellPolarityContactPotential_setBendingCoeff(struct tfCellPolarityContactPotentialHandle *handle, float bendingCoeff);
320
321
323// PolarityArrowData //
325
326
334CAPI_FUNC(HRESULT) tfPolarityArrowData_getArrowLength(struct tfCellPolarityPolarityArrowDataHandle *handle, float *arrowLength);
335
343CAPI_FUNC(HRESULT) tfPolarityArrowData_setArrowLength(struct tfCellPolarityPolarityArrowDataHandle *handle, float arrowLength);
344
345
347// Module functions //
349
350
359CAPI_FUNC(HRESULT) tfCellPolarityGetVectorAB(int pId, bool current, float **vec);
360
369CAPI_FUNC(HRESULT) tfCellPolarityGetVectorPCP(int pId, bool current, float **vec);
370
380CAPI_FUNC(HRESULT) tfCellPolaritySetVectorAB(int pId, float *pVec, bool current, bool init);
381
391CAPI_FUNC(HRESULT) tfCellPolaritySetVectorPCP(int pId, float *pVec, bool current, bool init);
392
398CAPI_FUNC(HRESULT) tfCellPolarityUpdate();
399
410CAPI_FUNC(HRESULT) tfCellPolarityRegisterParticle(struct tfParticleHandleHandle *ph);
411
420CAPI_FUNC(HRESULT) tfCellPolarityUnregister(struct tfParticleHandleHandle *ph);
421
433CAPI_FUNC(HRESULT) tfCellPolarityRegisterType(struct tfParticleTypeHandle *pType, const char *initMode, float *initPolarAB, float *initPolarPCP);
434
443CAPI_FUNC(HRESULT) tfCellPolarityGetInitMode(struct tfParticleTypeHandle *pType, char **initMode, unsigned int *numChars);
444
452CAPI_FUNC(HRESULT) tfCellPolaritySetInitMode(struct tfParticleTypeHandle *pType, const char *value);
453
461CAPI_FUNC(HRESULT) tfCellPolarityGetInitPolarAB(struct tfParticleTypeHandle *pType, float **vec);
462
470CAPI_FUNC(HRESULT) tfCellPolaritySetInitPolarAB(struct tfParticleTypeHandle *pType, float *value);
471
479CAPI_FUNC(HRESULT) tfCellPolarityGetInitPolarPCP(struct tfParticleTypeHandle *pType, float **vec);
480
488CAPI_FUNC(HRESULT) tfCellPolaritySetInitPolarPCP(struct tfParticleTypeHandle *pType, float *value);
489
496CAPI_FUNC(HRESULT) tfCellPolaritySetDrawVectors(bool _draw);
497
507CAPI_FUNC(HRESULT) tfCellPolaritySetArrowColors(const char *colorAB, const char *colorPCP);
508
517CAPI_FUNC(HRESULT) tfCellPolaritySetArrowScale(float _scale);
518
527CAPI_FUNC(HRESULT) tfCellPolaritySetArrowLength(float _length);
528
536CAPI_FUNC(HRESULT) tfCellPolarityGetVectorArrowAB(unsigned int pId, struct tfCellPolarityPolarityArrowDataHandle *arrowData);
537
545CAPI_FUNC(HRESULT) tfCellPolarityGetVectorArrowPCP(unsigned int pId, struct tfCellPolarityPolarityArrowDataHandle *arrowData);
546
553CAPI_FUNC(HRESULT) tfCellPolarityLoad();
554
555#endif // _WRAPS_C_MODELS_CENTER_CELL_POLARITY_CELL_POLARITY_H_
Handle to a CellPolarityPotentialContact instance.
Definition tfCCellPolarity.h:57
Handle to a PersistentForce instance.
Definition tfCCellPolarity.h:41
Definition tfCCellPolarity.h:31
Handle to a PolarityArrowData instance.
Definition tfCCellPolarity.h:49
Handle to a Force instance.
Definition tfCForce.h:59
Handle to a ParticleHandle instance.
Definition tfCParticle.h:111
Handle to a ParticleType instance.
Definition tfCParticle.h:119
Handle to a Potential instance.
Definition tfCPotential.h:144