File indexing completed on 2024-05-12 04:02:09

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>systemc.c</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (SystemC) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#27ae60">#include </span><span style="color:#27ae60">"systemc.h"</span>
0008 
0009 <span style="color:#7a7c7d">/*</span>
0010 <span style="color:#7a7c7d"> multi line comment</span>
0011 <span style="color:#7a7c7d"> */</span>
0012 
0013 <span style="color:#7a7c7d">// declare some module</span>
0014 <span style="color:#0095ff;font-weight:bold">SC_MODULE</span><span style="color:#3f8058">(</span>gate<span style="color:#3f8058">)</span>
0015 <span style="color:#3f8058">{</span>
0016     <span style="color:#7a7c7d">// inputs</span>
0017     <span style="color:#2980b9">sc_in</span><span style="color:#3f8058">&lt;</span><span style="color:#2980b9">bool</span><span style="color:#3f8058">></span> inA<span style="color:#3f8058">,</span> inB<span style="color:#3f8058">;</span>
0018 
0019     <span style="color:#7a7c7d">// outputs</span>
0020     <span style="color:#2980b9">sc_out</span><span style="color:#3f8058">&lt;</span><span style="color:#2980b9">bool</span><span style="color:#3f8058">></span> out<span style="color:#3f8058">;</span>
0021 
0022     <span style="color:#7a7c7d">// C function</span>
0023     <span style="color:#2980b9">void</span> do_something<span style="color:#3f8058">()</span>
0024     <span style="color:#3f8058">{</span>
0025         out<span style="color:#3f8058">.</span>write<span style="color:#3f8058">(</span>inA<span style="color:#3f8058">.</span>read<span style="color:#3f8058">()</span> <span style="color:#3f8058">||</span> inB<span style="color:#3f8058">.</span>read<span style="color:#3f8058">())</span><span style="color:#3f8058">;</span>
0026     <span style="color:#3f8058">}</span>
0027 
0028     <span style="color:#7a7c7d">// constructor</span>
0029     <span style="color:#0095ff;font-weight:bold">SC_CTOR</span><span style="color:#3f8058">(</span>gate<span style="color:#3f8058">)</span>
0030     <span style="color:#3f8058">{</span>
0031         <span style="color:#7a7c7d">// register method</span>
0032         <span style="color:#0095ff;font-weight:bold">SC_METHOD</span><span style="color:#3f8058">(</span>do_something<span style="color:#3f8058">)</span><span style="color:#3f8058">;</span>
0033     <span style="color:#3f8058">}</span>
0034 <span style="color:#3f8058">}</span><span style="color:#3f8058">;</span>
0035 </pre></body></html>