/home/andrew/Documents/cellml-api-doxygen/interfaces/CCGS.idl Source File

CCGS.idl
Go to the documentation of this file.
1 #include "CellML_APISPEC.idl"
3 #include "MaLaES.idl"
4 
11 module cellml_services
12 {
13  interface CustomGenerator;
14 
16  {
22 
29 
39 
46 
55 
61 
68  };
69 
71  {
81 
90 
98 
104  };
105 
108  {
114 
120  readonly attribute unsigned long degree;
121 
125  readonly attribute VariableEvaluationType type;
126 
133  readonly attribute wstring name;
134 
139  readonly attribute unsigned long assignedIndex;
140  };
141 #pragma terminal-interface
142 
145  {
149  ComputationTarget nextComputationTarget();
150  };
151 #pragma terminal-interface
152 
153  interface CodeInformation
155  {
161  readonly attribute wstring errorMessage;
162 
169 
175  readonly attribute unsigned long algebraicIndexCount;
176 
182  readonly attribute unsigned long rateIndexCount;
183 
188  readonly attribute unsigned long constantIndexCount;
189 
236  readonly attribute wstring initConstsString;
237 
241  readonly attribute wstring ratesString;
242 
246  readonly attribute wstring variablesString;
247 
256  readonly attribute wstring functionsString;
257 
261  ComputationTargetIterator iterateTargets();
262 
269  };
270 #pragma cross-module-argument
271 
272  interface CodeGenerator
274  {
280  attribute wstring constantPattern;
281 
287  attribute wstring stateVariableNamePattern;
288 
294  attribute wstring algebraicVariableNamePattern;
295 
301  attribute wstring rateNamePattern;
302 
308  attribute wstring voiPattern;
309 
319  attribute wstring sampleDensityFunctionPattern;
320 
332  attribute wstring sampleRealisationsPattern;
333 
339  attribute wstring boundVariableName;
340 
346  attribute unsigned long arrayOffset;
347 
354  attribute wstring assignPattern;
355 
369  attribute wstring solvePattern;
370 
380  attribute wstring solveNLSystemPattern;
381 
388  attribute wstring temporaryVariablePattern;
389 
395  attribute wstring declareTemporaryPattern;
396 
405  attribute wstring conditionalAssignmentPattern;
406 
415 
425 
435 
441 
446  CodeInformation generateCode(in cellml_api::Model sourceModel);
447 
454  CustomGenerator createCustomGenerator(in cellml_api::Model sourceModel);
455 
471  attribute boolean allowPassthrough;
472  };
473 #pragma cross-module-argument
474 
477  {
488 
494  readonly attribute unsigned long indexCount;
495 
511  ComputationTargetIterator iterateTargets();
512 
517  readonly attribute wstring generatedCode;
518 
527  readonly attribute wstring functionsString;
528 };
529 
532 {
536  ComputationTargetIterator iterateTargets();
537 
543  void requestComputation(in ComputationTarget wanted) raises(cellml_api::CellMLException);
544 
551  void markAsKnown(in ComputationTarget known);
552 
559  void markAsUnwanted(in ComputationTarget unwanted);
560 
564  CustomCodeInformation generateCode();
565 };
566 
569  {
613  readonly attribute wstring essentialVariablesString;
614 
618  readonly attribute wstring stateInformationString;
619 
624  readonly attribute unsigned long conditionVariableCount;
625 
629  readonly attribute wstring rootInformationString;
630  };
631 #pragma terminal-interface
632 #pragma cross-module-argument
633 
635  : CodeGenerator
636  {
641  IDACodeInformation generateIDACode(in cellml_api::Model sourceModel);
642 
650  attribute wstring residualPattern;
651 
659 
667 
673  attribute wstring infDelayedRatePattern;
674 
680  attribute wstring infDelayedStatePattern;
681 
688  attribute boolean trackPiecewiseConditions;
689 
695  attribute wstring conditionVariablePattern;
696  };
697 #pragma terminal-interface
698 #pragma cross-module-argument
699 
702  {
703  CodeGenerator createCodeGenerator();
704  IDACodeGenerator createIDACodeGenerator();
705  };
706 #pragma terminal-interface
707 #pragma cross-module-argument
708 
709 };
Back to Top