    

 ## On this page

  

 

 # syscCouplingInterfaceF

 Last update: 17.07.2025 

<a id="l00001" name="l00001"></a> 1module fortran

<a id="l00002" name="l00002"></a> 2!

<a id="l00003" name="l00003"></a> 3! Copyright ANSYS, Inc. 

<a id="l00004" name="l00004"></a> 4! Unauthorized use, distribution, or duplication is prohibited.

<a id="l00005" name="l00005"></a> 5!

<a id="l00006" name="l00006"></a> 6! Provide free-form Fortran interface for

<a id="l00007" name="l00007"></a> 7! System Coupling Participant Library.

<a id="l00008" name="l00008"></a> 8!

<a id="l00009" name="l00009"></a> 9! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00033" name="l00033"></a> 33! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00034" name="l00034"></a>[ 34](structfortran_1_1sysccouplinginterfacef.xhtml)type :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00035" name="l00035"></a>[ 35](structfortran_1_1sysccouplinginterfacef.xhtml#a72f0326f2d38c6a753a748136992df3a) character(len=SyscStrLen) :: name

<a id="l00036" name="l00036"></a> 36end type [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)



<a id="l00037" name="l00037"></a> 37!

<a id="l00038" name="l00038"></a> 38!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00039" name="l00039"></a> 39!

<a id="l00041" name="l00041"></a>[ 41](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)interface [syscgetcouplinginterfacef](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)

<a id="l00042" name="l00042"></a> 42!

<a id="l00043" name="l00043"></a> 43!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00048" name="l00048"></a> 48!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00049" name="l00049"></a>[ 49](interfacefortran_1_1syscgetcouplinginterfacef.xhtml#aec4bf2d947b022718429d490da07c2f7)function [syscgetcouplinginterfacef](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)(name) result(ret)

<a id="l00050" name="l00050"></a> 50!

<a id="l00051" name="l00051"></a> 51 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00052" name="l00052"></a> 52 character(len=\*), intent(in) :: name

<a id="l00053" name="l00053"></a> 53 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)) :: ret

<a id="l00054" name="l00054"></a> 54!

<a id="l00055" name="l00055"></a> 55!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00056" name="l00056"></a> 56!DIR$ ATTRIBUTES DLLIMPORT :: syscGetCouplingInterfaceF

<a id="l00057" name="l00057"></a> 57!DIR$ ENDIF

<a id="l00058" name="l00058"></a> 58!



<a id="l00059" name="l00059"></a> 59end function [syscgetcouplinginterfacef](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)

<a id="l00060" name="l00060"></a> 60!

<a id="l00061" name="l00061"></a> 61!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00062" name="l00062"></a> 62!



<a id="l00063" name="l00063"></a> 63end interface [syscgetcouplinginterfacef](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)

<a id="l00064" name="l00064"></a> 64!

<a id="l00066" name="l00066"></a>[ 66](interfacefortran_1_1syscaddsideoneregionf.xhtml)interface [syscaddsideoneregionf](interfacefortran_1_1syscaddsideoneregionf.xhtml)

<a id="l00067" name="l00067"></a> 67!

<a id="l00068" name="l00068"></a> 68!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00087" name="l00087"></a> 87!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00088" name="l00088"></a> 88!

<a id="l00089" name="l00089"></a>[ 89](interfacefortran_1_1syscaddsideoneregionf.xhtml#a6a2f1fe1b0c810365fec64d98be79d79)function [syscaddsideoneregionf](interfacefortran_1_1syscaddsideoneregionf.xhtml)(interface, region) result (ret)

<a id="l00090" name="l00090"></a> 90!

<a id="l00091" name="l00091"></a> 91 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00092" name="l00092"></a> 92 import :: [syscregionf](structfortran_1_1syscregionf.xhtml)

<a id="l00093" name="l00093"></a> 93 import :: [syscerrorf](structfortran_1_1syscerrorf.xhtml)

<a id="l00094" name="l00094"></a> 94 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: interface

<a id="l00095" name="l00095"></a> 95 type([syscregionf](structfortran_1_1syscregionf.xhtml)), intent(in) :: region

<a id="l00096" name="l00096"></a> 96 type([syscerrorf](structfortran_1_1syscerrorf.xhtml)) :: ret

<a id="l00097" name="l00097"></a> 97!

<a id="l00098" name="l00098"></a> 98!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00099" name="l00099"></a> 99!DIR$ ATTRIBUTES DLLIMPORT :: syscAddSideOneRegionF

<a id="l00100" name="l00100"></a> 100!DIR$ ENDIF

<a id="l00101" name="l00101"></a> 101!



<a id="l00102" name="l00102"></a> 102end function [syscaddsideoneregionf](interfacefortran_1_1syscaddsideoneregionf.xhtml)

<a id="l00103" name="l00103"></a> 103!



<a id="l00104" name="l00104"></a> 104end interface [syscaddsideoneregionf](interfacefortran_1_1syscaddsideoneregionf.xhtml)

<a id="l00105" name="l00105"></a> 105!

<a id="l00106" name="l00106"></a> 106!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00107" name="l00107"></a> 107!

<a id="l00109" name="l00109"></a>[ 109](interfacefortran_1_1syscaddsidetworegionf.xhtml)interface [syscaddsidetworegionf](interfacefortran_1_1syscaddsidetworegionf.xhtml)

<a id="l00110" name="l00110"></a> 110!

<a id="l00111" name="l00111"></a> 111!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00130" name="l00130"></a> 130!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00131" name="l00131"></a> 131!

<a id="l00132" name="l00132"></a>[ 132](interfacefortran_1_1syscaddsidetworegionf.xhtml#a9bd8b8ff8727de23eabd530fef19e5ac)function [syscaddsidetworegionf](interfacefortran_1_1syscaddsidetworegionf.xhtml)(interface, region) result (ret)

<a id="l00133" name="l00133"></a> 133!

<a id="l00134" name="l00134"></a> 134 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00135" name="l00135"></a> 135 import :: [syscregionf](structfortran_1_1syscregionf.xhtml)

<a id="l00136" name="l00136"></a> 136 import :: [syscerrorf](structfortran_1_1syscerrorf.xhtml)

<a id="l00137" name="l00137"></a> 137 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: interface

<a id="l00138" name="l00138"></a> 138 type([syscregionf](structfortran_1_1syscregionf.xhtml)), intent(in) :: region

<a id="l00139" name="l00139"></a> 139 type([syscerrorf](structfortran_1_1syscerrorf.xhtml)) :: ret

<a id="l00140" name="l00140"></a> 140!

<a id="l00141" name="l00141"></a> 141!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00142" name="l00142"></a> 142!DIR$ ATTRIBUTES DLLIMPORT :: syscAddSideTwoRegionF

<a id="l00143" name="l00143"></a> 143!DIR$ ENDIF

<a id="l00144" name="l00144"></a> 144!



<a id="l00145" name="l00145"></a> 145end function [syscaddsidetworegionf](interfacefortran_1_1syscaddsidetworegionf.xhtml)

<a id="l00146" name="l00146"></a> 146!



<a id="l00147" name="l00147"></a> 147end interface [syscaddsidetworegionf](interfacefortran_1_1syscaddsidetworegionf.xhtml)

<a id="l00148" name="l00148"></a> 148!

<a id="l00149" name="l00149"></a> 149!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00150" name="l00150"></a> 150!

<a id="l00152" name="l00152"></a>[ 152](interfacefortran_1_1syscadddatatransferf.xhtml)interface [syscadddatatransferf](interfacefortran_1_1syscadddatatransferf.xhtml)

<a id="l00153" name="l00153"></a> 153!

<a id="l00154" name="l00154"></a> 154!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00156" name="l00156"></a> 156!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00157" name="l00157"></a> 157!

<a id="l00158" name="l00158"></a>[ 158](interfacefortran_1_1syscadddatatransferf.xhtml#a6848395ab0ad1cbe86aa5b0ea170bd28)function [syscadddatatransferf](interfacefortran_1_1syscadddatatransferf.xhtml)(couplingInterface, dataTransfer)&amp;

<a id="l00159" name="l00159"></a> 159 result(ret)

<a id="l00160" name="l00160"></a> 160!

<a id="l00161" name="l00161"></a> 161 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00162" name="l00162"></a> 162 import :: [syscdatatransferf](structfortran_1_1syscdatatransferf.xhtml)

<a id="l00163" name="l00163"></a> 163 import :: [syscerrorf](structfortran_1_1syscerrorf.xhtml)

<a id="l00164" name="l00164"></a> 164 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00165" name="l00165"></a> 165 type([syscdatatransferf](structfortran_1_1syscdatatransferf.xhtml)), intent(in) :: datatransfer

<a id="l00166" name="l00166"></a> 166 type([syscerrorf](structfortran_1_1syscerrorf.xhtml)) :: ret

<a id="l00167" name="l00167"></a> 167!

<a id="l00168" name="l00168"></a> 168!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00169" name="l00169"></a> 169!DIR$ ATTRIBUTES DLLIMPORT :: syscAddDataTransferF

<a id="l00170" name="l00170"></a> 170!DIR$ ENDIF

<a id="l00171" name="l00171"></a> 171!



<a id="l00172" name="l00172"></a> 172end function [syscadddatatransferf](interfacefortran_1_1syscadddatatransferf.xhtml)

<a id="l00173" name="l00173"></a> 173!



<a id="l00174" name="l00174"></a> 174end interface [syscadddatatransferf](interfacefortran_1_1syscadddatatransferf.xhtml)

<a id="l00175" name="l00175"></a> 175!

<a id="l00176" name="l00176"></a> 176!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00177" name="l00177"></a> 177!

<a id="l00179" name="l00179"></a>[ 179](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)interface [sysccouplinginterfacegetnumdatatransfersf](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)

<a id="l00180" name="l00180"></a> 180!

<a id="l00181" name="l00181"></a> 181!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00183" name="l00183"></a> 183!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00184" name="l00184"></a> 184!

<a id="l00185" name="l00185"></a>[ 185](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml#a57ec10107b49153576c110ee8072f232)function [sysccouplinginterfacegetnumdatatransfersf](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)(&amp;

<a id="l00186" name="l00186"></a> 186 couplingInterface) result (ret)

<a id="l00187" name="l00187"></a> 187!

<a id="l00188" name="l00188"></a> 188 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00189" name="l00189"></a> 189 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00190" name="l00190"></a> 190 integer(kind=8) :: ret

<a id="l00191" name="l00191"></a> 191!

<a id="l00192" name="l00192"></a> 192!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00193" name="l00193"></a> 193!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetNumDataTransfersF

<a id="l00194" name="l00194"></a> 194!DIR$ ENDIF

<a id="l00195" name="l00195"></a> 195!



<a id="l00196" name="l00196"></a> 196end function [sysccouplinginterfacegetnumdatatransfersf](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)

<a id="l00197" name="l00197"></a> 197!



<a id="l00198" name="l00198"></a> 198end interface [sysccouplinginterfacegetnumdatatransfersf](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)

<a id="l00199" name="l00199"></a> 199!

<a id="l00200" name="l00200"></a> 200!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00201" name="l00201"></a> 201!

<a id="l00203" name="l00203"></a>[ 203](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)interface [sysccouplinginterfacegetnumsideoneregionsf](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)

<a id="l00204" name="l00204"></a> 204!

<a id="l00205" name="l00205"></a> 205!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00207" name="l00207"></a> 207!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00208" name="l00208"></a> 208!

<a id="l00209" name="l00209"></a>[ 209](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml#ad4acfcb9b205aba14b99e8c3371d76a1)function [sysccouplinginterfacegetnumsideoneregionsf](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)(&amp;

<a id="l00210" name="l00210"></a> 210 couplingInterface) result (ret)

<a id="l00211" name="l00211"></a> 211!

<a id="l00212" name="l00212"></a> 212 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00213" name="l00213"></a> 213 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00214" name="l00214"></a> 214 integer(kind=8) :: ret

<a id="l00215" name="l00215"></a> 215!

<a id="l00216" name="l00216"></a> 216!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00217" name="l00217"></a> 217!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetNumSideOneRegionsF

<a id="l00218" name="l00218"></a> 218!DIR$ ENDIF

<a id="l00219" name="l00219"></a> 219!



<a id="l00220" name="l00220"></a> 220end function [sysccouplinginterfacegetnumsideoneregionsf](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)

<a id="l00221" name="l00221"></a> 221!



<a id="l00222" name="l00222"></a> 222end interface [sysccouplinginterfacegetnumsideoneregionsf](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)

<a id="l00223" name="l00223"></a> 223!

<a id="l00224" name="l00224"></a> 224!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00225" name="l00225"></a> 225!

<a id="l00227" name="l00227"></a>[ 227](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)interface [sysccouplinginterfacegetnumsidetworegionsf](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)

<a id="l00228" name="l00228"></a> 228!

<a id="l00229" name="l00229"></a> 229!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00231" name="l00231"></a> 231!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00232" name="l00232"></a> 232!

<a id="l00233" name="l00233"></a>[ 233](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml#a0756af7c3adf69b7507861938d4f0f26)function [sysccouplinginterfacegetnumsidetworegionsf](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)(&amp;

<a id="l00234" name="l00234"></a> 234 couplingInterface) result (ret)

<a id="l00235" name="l00235"></a> 235!

<a id="l00236" name="l00236"></a> 236 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

<a id="l00237" name="l00237"></a> 237 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00238" name="l00238"></a> 238 integer(kind=8) :: ret

<a id="l00239" name="l00239"></a> 239!

<a id="l00240" name="l00240"></a> 240!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00241" name="l00241"></a> 241!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetNumSideTwoRegionsF

<a id="l00242" name="l00242"></a> 242!DIR$ ENDIF

<a id="l00243" name="l00243"></a> 243!



<a id="l00244" name="l00244"></a> 244end function [sysccouplinginterfacegetnumsidetworegionsf](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)

<a id="l00245" name="l00245"></a> 245!



<a id="l00246" name="l00246"></a> 246end interface [sysccouplinginterfacegetnumsidetworegionsf](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)

<a id="l00247" name="l00247"></a> 247!

<a id="l00248" name="l00248"></a> 248!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00249" name="l00249"></a> 249!

<a id="l00252" name="l00252"></a> 252!

<a id="l00253" name="l00253"></a>[ 253](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)interface [sysccouplinginterfacegetdatatransferf](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)

<a id="l00254" name="l00254"></a> 254!

<a id="l00255" name="l00255"></a> 255!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00257" name="l00257"></a> 257!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00258" name="l00258"></a> 258!

<a id="l00259" name="l00259"></a>[ 259](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml#a64f4a6d41e2fa5bf6be37e13c0bebd34)function [sysccouplinginterfacegetdatatransferf](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)(&amp;

<a id="l00260" name="l00260"></a> 260 couplingInterface, index) result (ret)

<a id="l00261" name="l00261"></a> 261!

<a id="l00262" name="l00262"></a> 262 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml), [syscdatatransferf](structfortran_1_1syscdatatransferf.xhtml)

<a id="l00263" name="l00263"></a> 263 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00264" name="l00264"></a> 264 integer(kind=8), intent(in) :: index

<a id="l00265" name="l00265"></a> 265 type([syscdatatransferf](structfortran_1_1syscdatatransferf.xhtml)) :: ret

<a id="l00266" name="l00266"></a> 266!

<a id="l00267" name="l00267"></a> 267!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00268" name="l00268"></a> 268!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetDataTransferF

<a id="l00269" name="l00269"></a> 269!DIR$ ENDIF

<a id="l00270" name="l00270"></a> 270!



<a id="l00271" name="l00271"></a> 271end function [sysccouplinginterfacegetdatatransferf](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)

<a id="l00272" name="l00272"></a> 272!



<a id="l00273" name="l00273"></a> 273end interface [sysccouplinginterfacegetdatatransferf](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)

<a id="l00274" name="l00274"></a> 274!

<a id="l00275" name="l00275"></a> 275!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00276" name="l00276"></a> 276!

<a id="l00279" name="l00279"></a> 279!

<a id="l00280" name="l00280"></a>[ 280](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)interface [sysccouplinginterfacegetsideoneregionf](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)

<a id="l00281" name="l00281"></a> 281!

<a id="l00282" name="l00282"></a> 282!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00284" name="l00284"></a> 284!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00285" name="l00285"></a> 285!

<a id="l00286" name="l00286"></a>[ 286](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml#af0acce7e620672b20fd84b6ae8169407)function [sysccouplinginterfacegetsideoneregionf](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)(&amp;

<a id="l00287" name="l00287"></a> 287 couplingInterface, index) result (ret)

<a id="l00288" name="l00288"></a> 288!

<a id="l00289" name="l00289"></a> 289 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml), [syscregionf](structfortran_1_1syscregionf.xhtml)

<a id="l00290" name="l00290"></a> 290 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00291" name="l00291"></a> 291 integer(kind=8), intent(in) :: index

<a id="l00292" name="l00292"></a> 292 type([syscregionf](structfortran_1_1syscregionf.xhtml)) :: ret

<a id="l00293" name="l00293"></a> 293!

<a id="l00294" name="l00294"></a> 294!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00295" name="l00295"></a> 295!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetSideOneRegionF

<a id="l00296" name="l00296"></a> 296!DIR$ ENDIF

<a id="l00297" name="l00297"></a> 297!



<a id="l00298" name="l00298"></a> 298end function [sysccouplinginterfacegetsideoneregionf](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)

<a id="l00299" name="l00299"></a> 299!



<a id="l00300" name="l00300"></a> 300end interface [sysccouplinginterfacegetsideoneregionf](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)

<a id="l00301" name="l00301"></a> 301!

<a id="l00302" name="l00302"></a> 302!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00303" name="l00303"></a> 303!

<a id="l00306" name="l00306"></a> 306!

<a id="l00307" name="l00307"></a>[ 307](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)interface [sysccouplinginterfacegetsidetworegionf](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)

<a id="l00308" name="l00308"></a> 308!

<a id="l00309" name="l00309"></a> 309!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00311" name="l00311"></a> 311!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00312" name="l00312"></a> 312!

<a id="l00313" name="l00313"></a>[ 313](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml#a6c0ec26d5adfd97fdf8423f16baa238d)function [sysccouplinginterfacegetsidetworegionf](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)(&amp;

<a id="l00314" name="l00314"></a> 314 couplingInterface, index) result (ret)

<a id="l00315" name="l00315"></a> 315!

<a id="l00316" name="l00316"></a> 316 import :: [sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml), [syscregionf](structfortran_1_1syscregionf.xhtml)

<a id="l00317" name="l00317"></a> 317 type([sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)), intent(in) :: couplinginterface

<a id="l00318" name="l00318"></a> 318 integer(kind=8), intent(in) :: index

<a id="l00319" name="l00319"></a> 319 type([syscregionf](structfortran_1_1syscregionf.xhtml)) :: ret

<a id="l00320" name="l00320"></a> 320!

<a id="l00321" name="l00321"></a> 321!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00322" name="l00322"></a> 322!DIR$ ATTRIBUTES DLLIMPORT :: syscCouplingInterfaceGetSideTwoRegionF

<a id="l00323" name="l00323"></a> 323!DIR$ ENDIF

<a id="l00324" name="l00324"></a> 324!



<a id="l00325" name="l00325"></a> 325end function [sysccouplinginterfacegetsidetworegionf](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)

<a id="l00326" name="l00326"></a> 326!



<a id="l00327" name="l00327"></a> 327end interface [sysccouplinginterfacegetsidetworegionf](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)

<a id="l00328" name="l00328"></a> 328!

<a id="l00329" name="l00329"></a> 329end module fortran

[fortran::syscadddatatransferf](interfacefortran_1_1syscadddatatransferf.xhtml)

Provide an interface to add data transfer.

**Definition** [syscCouplingInterfaceF.fi:152](syscCouplingInterfaceF_8fi_source.xhtml#l00152)



[fortran::syscaddsideoneregionf](interfacefortran_1_1syscaddsideoneregionf.xhtml)

Provide an interface to add side one region.

**Definition** [syscCouplingInterfaceF.fi:66](syscCouplingInterfaceF_8fi_source.xhtml#l00066)



[fortran::syscaddsidetworegionf](interfacefortran_1_1syscaddsidetworegionf.xhtml)

Provide an interface to add side two region.

**Definition** [syscCouplingInterfaceF.fi:109](syscCouplingInterfaceF_8fi_source.xhtml#l00109)



[fortran::sysccouplinginterfacegetdatatransferf](interfacefortran_1_1sysccouplinginterfacegetdatatransferf.xhtml)

Provide an interface to get a data transfer from a coupling interface.

**Definition** [syscCouplingInterfaceF.fi:253](syscCouplingInterfaceF_8fi_source.xhtml#l00253)



[fortran::sysccouplinginterfacegetnumdatatransfersf](interfacefortran_1_1sysccouplinginterfacegetnumdatatransfersf.xhtml)

Provide an interface to get number of data transfers.

**Definition** [syscCouplingInterfaceF.fi:179](syscCouplingInterfaceF_8fi_source.xhtml#l00179)



[fortran::sysccouplinginterfacegetnumsideoneregionsf](interfacefortran_1_1sysccouplinginterfacegetnumsideoneregionsf.xhtml)

Provide an interface to get number of side one regions.

**Definition** [syscCouplingInterfaceF.fi:203](syscCouplingInterfaceF_8fi_source.xhtml#l00203)



[fortran::sysccouplinginterfacegetnumsidetworegionsf](interfacefortran_1_1sysccouplinginterfacegetnumsidetworegionsf.xhtml)

Provide an interface to get number of side two regions.

**Definition** [syscCouplingInterfaceF.fi:227](syscCouplingInterfaceF_8fi_source.xhtml#l00227)



[fortran::sysccouplinginterfacegetsideoneregionf](interfacefortran_1_1sysccouplinginterfacegetsideoneregionf.xhtml)

Provide an interface to get side one region from a coupling interface.

**Definition** [syscCouplingInterfaceF.fi:280](syscCouplingInterfaceF_8fi_source.xhtml#l00280)



[fortran::sysccouplinginterfacegetsidetworegionf](interfacefortran_1_1sysccouplinginterfacegetsidetworegionf.xhtml)

Provide an interface to get side two region from a coupling interface.

**Definition** [syscCouplingInterfaceF.fi:307](syscCouplingInterfaceF_8fi_source.xhtml#l00307)



[fortran::syscgetcouplinginterfacef](interfacefortran_1_1syscgetcouplinginterfacef.xhtml)

Provide an interface to get a coupling interface.

**Definition** [syscCouplingInterfaceF.fi:41](syscCouplingInterfaceF_8fi_source.xhtml#l00041)



[fortran::sysccouplinginterfacef](structfortran_1_1sysccouplinginterfacef.xhtml)

Provide a struct for a coupling interface.

**Definition** [syscCouplingInterfaceF.fi:34](syscCouplingInterfaceF_8fi_source.xhtml#l00034)



[fortran::syscdatatransferf](structfortran_1_1syscdatatransferf.xhtml)

Provide a struct for a data transfer.

**Definition** [syscDataTransferF.fi:12](syscDataTransferF_8fi_source.xhtml#l00012)



[fortran::syscerrorf](structfortran_1_1syscerrorf.xhtml)

Provide an error type returned by the Fortran interface calls.

**Definition** [syscCommonTypesF.fi:133](syscCommonTypesF_8fi_source.xhtml#l00133)



[fortran::syscregionf](structfortran_1_1syscregionf.xhtml)

Provide a struct for a System Coupling region.

**Definition** [syscRegionF.fi:29](syscRegionF_8fi_source.xhtml#l00029)