#include <sc_sensitive.h>
sc_sensitive.h の 83 行で定義されています。
typedef sc_signal_in_if<bool> sc_core::sc_sensitive::in_if_b_type |
sc_sensitive.h の 90 行で定義されています。
sc_sensitive.h の 91 行で定義されています。
typedef sc_in<bool> sc_core::sc_sensitive::in_port_b_type |
sc_sensitive.h の 92 行で定義されています。
sc_sensitive.h の 93 行で定義されています。
typedef sc_inout<bool> sc_core::sc_sensitive::inout_port_b_type |
sc_sensitive.h の 94 行で定義されています。
sc_sensitive.h の 95 行で定義されています。
anonymous enum [private] |
sc_core::sc_sensitive::sc_sensitive | ( | sc_module * | module_ | ) | [explicit, private] |
sc_core::sc_sensitive::~sc_sensitive | ( | ) | [private] |
sc_core::sc_sensitive::sc_sensitive | ( | ) | [private] |
sc_core::sc_sensitive::sc_sensitive | ( | const sc_sensitive & | ) | [private] |
sc_sensitive & sc_core::sc_sensitive::operator<< | ( | sc_process_handle | handle_ | ) |
sc_sensitive.cpp の 135 行で定義されています。
00136 { 00137 switch ( handle_.proc_kind() ) 00138 { 00139 case SC_CTHREAD_PROC_: 00140 case SC_THREAD_PROC_: 00141 m_mode = SC_THREAD_; 00142 break; 00143 case SC_METHOD_PROC_: 00144 m_mode = SC_METHOD_; 00145 break; 00146 default: 00147 assert(0); 00148 } 00149 m_handle = (sc_process_b*)handle_; 00150 return *this; 00151 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | const sc_event & | event_ | ) |
sc_sensitive.cpp の 302 行で定義されています。
00303 { 00304 warn_no_parens(); 00305 return operator << ( event_ ); 00306 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | const sc_interface & | interface_ | ) |
sc_sensitive.cpp の 309 行で定義されています。
00310 { 00311 warn_no_parens(); 00312 return operator << ( interface_ ); 00313 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | const sc_port_base & | port_ | ) |
sc_sensitive.cpp の 316 行で定義されています。
00317 { 00318 warn_no_parens(); 00319 return operator << ( port_ ); 00320 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_event_finder & | event_finder_ | ) |
sc_sensitive.cpp の 323 行で定義されています。
00324 { 00325 warn_no_parens(); 00326 return operator << ( event_finder_ ); 00327 }
sc_sensitive & sc_core::sc_sensitive::operator<< | ( | const sc_event & | event_ | ) |
sc_sensitive.cpp の 154 行で定義されています。
00155 { 00156 // check 00157 if( sc_is_running() ) { 00158 SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_, "simulation running" ); 00159 } 00160 00161 // make sensitive 00162 switch( m_mode ) { 00163 case SC_METHOD_: 00164 case SC_THREAD_: { 00165 m_handle->add_static_event( event_ ); 00166 break; 00167 } 00168 case SC_NONE_: 00169 /* do nothing */ 00170 break; 00171 } 00172 00173 return *this; 00174 }
sc_sensitive & sc_core::sc_sensitive::operator<< | ( | const sc_interface & | interface_ | ) |
sc_sensitive.cpp の 185 行で定義されています。
00186 { 00187 // check 00188 if( sc_is_running() ) { 00189 SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_, "simulation running" ); 00190 } 00191 00192 // make sensitive 00193 switch( m_mode ) { 00194 case SC_METHOD_: 00195 case SC_THREAD_: { 00196 m_handle->add_static_event( interface_.default_event() ); 00197 break; 00198 } 00199 case SC_NONE_: 00200 /* do nothing */ 00201 break; 00202 } 00203 00204 return *this; 00205 }
sc_sensitive & sc_core::sc_sensitive::operator<< | ( | const sc_port_base & | port_ | ) |
sc_sensitive.cpp の 215 行で定義されています。
00216 { 00217 // check 00218 if( sc_is_running() ) { 00219 SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_, "simulation running" ); 00220 } 00221 00222 // make sensitive 00223 switch( m_mode ) { 00224 case SC_METHOD_: { 00225 port_.make_sensitive( as_method_handle( m_handle ) ); 00226 break; 00227 } 00228 case SC_THREAD_: { 00229 port_.make_sensitive( as_thread_handle( m_handle ) ); 00230 break; 00231 } 00232 case SC_NONE_: 00233 /* do nothing */ 00234 break; 00235 } 00236 00237 return *this; 00238 }
sc_sensitive & sc_core::sc_sensitive::operator<< | ( | sc_event_finder & | event_finder_ | ) |
sc_sensitive.cpp の 255 行で定義されています。
00256 { 00257 // check 00258 if( sc_is_running() ) { 00259 SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_, "simulation running" ); 00260 } 00261 00262 // make sensitive 00263 switch( m_mode ) { 00264 case SC_METHOD_: { 00265 event_finder_.port().make_sensitive( as_method_handle( m_handle ), 00266 &event_finder_ ); 00267 break; 00268 } 00269 case SC_THREAD_: { 00270 event_finder_.port().make_sensitive( as_thread_handle( m_handle ), 00271 &event_finder_ ); 00272 break; 00273 } 00274 case SC_NONE_: 00275 /* do nothing */ 00276 break; 00277 } 00278 00279 return *this; 00280 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
sc_event_finder & | event_finder_ | |||
) |
sc_sensitive.cpp の 331 行で定義されています。
00333 { 00334 event_finder_.port().make_sensitive( handle_, &event_finder_ ); 00335 return *this; 00336 }
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const in_if_b_type & | interface_ | |||
) |
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const in_if_l_type & | interface_ | |||
) |
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const in_port_b_type & | port_ | |||
) |
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const in_port_l_type & | port_ | |||
) |
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const inout_port_b_type & | port_ | |||
) |
sc_sensitive & sc_core::sc_sensitive::operator() | ( | sc_cthread_handle | handle_, | |
const inout_port_l_type & | port_ | |||
) |
void sc_core::sc_sensitive::make_static_sensitivity | ( | sc_process_b * | handle_, | |
const sc_event & | event_ | |||
) | [static] |
void sc_core::sc_sensitive::make_static_sensitivity | ( | sc_process_b * | handle_, | |
const sc_interface & | interface_ | |||
) | [static] |
void sc_core::sc_sensitive::make_static_sensitivity | ( | sc_process_b * | handle_, | |
const sc_port_base & | port_ | |||
) | [static] |
sc_sensitive.cpp の 241 行で定義されています。
00243 { 00244 sc_method_handle handle_m = as_method_handle( handle_ ); 00245 if ( handle_m ) { 00246 port_.make_sensitive( handle_m ); 00247 return; 00248 } 00249 sc_thread_handle handle_t = as_thread_handle( handle_ ); 00250 // assert(handle_t); 00251 port_.make_sensitive( handle_t ); 00252 }
void sc_core::sc_sensitive::make_static_sensitivity | ( | sc_process_b * | handle_, | |
sc_event_finder & | event_finder_ | |||
) | [static] |
sc_sensitive.cpp の 283 行で定義されています。
00285 { 00286 if (sc_is_running()) { 00287 handle_->add_static_event( event_finder_.find_event() ); 00288 } else { 00289 sc_method_handle handle_m = as_method_handle( handle_ ); 00290 if ( handle_m ) { 00291 event_finder_.port().make_sensitive( handle_m, &event_finder_ ); 00292 return; 00293 } 00294 sc_thread_handle handle_t = as_thread_handle( handle_ ); 00295 // assert(handle_t); 00296 event_finder_.port().make_sensitive( handle_t, &event_finder_); 00297 } 00298 }
void sc_core::sc_sensitive::reset | ( | ) |
sc_sensitive& sc_core::sc_sensitive::operator= | ( | const sc_sensitive & | ) | [private] |
friend class sc_module [friend] |
sc_sensitive.h の 85 行で定義されています。
sc_module* sc_core::sc_sensitive::m_module [private] |
sc_sensitive.h の 141 行で定義されています。
enum { ... } sc_core::sc_sensitive::m_mode [private] |
sc_process_b* sc_core::sc_sensitive::m_handle [private] |
sc_sensitive.h の 143 行で定義されています。