クラス sc_core::sc_sensitive_pos

#include <sc_sensitive.h>

すべてのメンバ一覧

Public 型

typedef sc_signal_in_if< bool > in_if_b_type
typedef sc_signal_in_if
< sc_dt::sc_logic
in_if_l_type
typedef sc_in< bool > in_port_b_type
typedef sc_in< sc_dt::sc_logicin_port_l_type
typedef sc_inout< bool > inout_port_b_type
typedef sc_inout< sc_dt::sc_logicinout_port_l_type

Public メソッド

sc_sensitive_posoperator<< (sc_process_handle)
sc_sensitive_posoperator<< (sc_method_handle)
sc_sensitive_posoperator<< (sc_thread_handle)
sc_sensitive_posoperator() (const in_if_b_type &)
sc_sensitive_posoperator() (const in_if_l_type &)
sc_sensitive_posoperator() (const in_port_b_type &)
sc_sensitive_posoperator() (const in_port_l_type &)
sc_sensitive_posoperator() (const inout_port_b_type &)
sc_sensitive_posoperator() (const inout_port_l_type &)
sc_sensitive_posoperator<< (const in_if_b_type &)
sc_sensitive_posoperator<< (const in_if_l_type &)
sc_sensitive_posoperator<< (const in_port_b_type &)
sc_sensitive_posoperator<< (const in_port_l_type &)
sc_sensitive_posoperator<< (const inout_port_b_type &)
sc_sensitive_posoperator<< (const inout_port_l_type &)
void reset ()

Private 型

enum  { SC_NONE_, SC_METHOD_, SC_THREAD_ }

Private メソッド

 sc_sensitive_pos (sc_module *)
 ~sc_sensitive_pos ()
 sc_sensitive_pos ()
 sc_sensitive_pos (const sc_sensitive_pos &)
sc_sensitive_posoperator= (const sc_sensitive_pos &)

Private 変数

sc_modulem_module
enum
sc_core::sc_sensitive_pos:: { ... }  
m_mode
sc_process_bm_handle

フレンド

class sc_module


説明

sc_sensitive.h161 行で定義されています。


型定義

sc_sensitive.h168 行で定義されています。

sc_sensitive.h169 行で定義されています。

sc_sensitive.h170 行で定義されています。

sc_sensitive.h171 行で定義されています。

sc_sensitive.h172 行で定義されています。

sc_sensitive.h173 行で定義されています。


列挙型

anonymous enum [private]

列挙型の値:
SC_NONE_ 
SC_METHOD_ 
SC_THREAD_ 

sc_sensitive.h209 行で定義されています。


コンストラクタとデストラクタ

sc_core::sc_sensitive_pos::sc_sensitive_pos ( sc_module module_  )  [explicit, private]

sc_sensitive.cpp411 行で定義されています。

00412 : m_module( module_ ),
00413   m_mode( SC_NONE_ ),
00414   m_handle( 0 )
00415 {}

sc_core::sc_sensitive_pos::~sc_sensitive_pos (  )  [private]

sc_sensitive.cpp420 行で定義されています。

00421 {}

sc_core::sc_sensitive_pos::sc_sensitive_pos (  )  [private]

sc_core::sc_sensitive_pos::sc_sensitive_pos ( const sc_sensitive_pos  )  [private]


関数

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( sc_process_handle  handle_  ) 

sc_sensitive.cpp427 行で定義されています。

00428 {
00429     switch ( handle_.proc_kind() )
00430         {
00431       case SC_CTHREAD_PROC_:
00432       case SC_THREAD_PROC_:
00433         m_mode = SC_THREAD_;
00434         break;
00435       case SC_METHOD_PROC_:
00436         m_mode = SC_METHOD_;
00437         break;
00438       default:
00439         assert(0);
00440     }
00441     m_handle = (sc_process_b*)handle_;
00442     return *this;
00443 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( sc_method_handle  handle_  ) 

sc_sensitive.cpp446 行で定義されています。

00447 {
00448     m_mode = SC_METHOD_;
00449     m_handle = handle_;
00450     return *this;
00451 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( sc_thread_handle  handle_  ) 

sc_sensitive.cpp454 行で定義されています。

00455 {
00456     m_mode = SC_THREAD_;
00457     m_handle = handle_;
00458     return *this;
00459 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const in_if_b_type interface_  ) 

sc_sensitive.cpp620 行で定義されています。

00621 {
00622     warn_no_parens();
00623     return operator << ( interface_ );
00624 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const in_if_l_type interface_  ) 

sc_sensitive.cpp627 行で定義されています。

00628 {
00629     warn_no_parens();
00630     return operator << ( interface_ );
00631 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const in_port_b_type port_  ) 

sc_sensitive.cpp634 行で定義されています。

00635 {
00636     warn_no_parens();
00637     return operator << ( port_ );
00638 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const in_port_l_type port_  ) 

sc_sensitive.cpp641 行で定義されています。

00642 {
00643     warn_no_parens();
00644     return operator << ( port_ );
00645 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const inout_port_b_type port_  ) 

sc_sensitive.cpp648 行で定義されています。

00649 {
00650     warn_no_parens();
00651     return operator << ( port_ );
00652 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator() ( const inout_port_l_type port_  ) 

sc_sensitive.cpp655 行で定義されています。

00656 {
00657     warn_no_parens();
00658     return operator << ( port_ );
00659 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const in_if_b_type interface_  ) 

sc_sensitive.cpp463 行で定義されています。

00464 {
00465     sc_deprecated_sensitive_pos();
00466     // check
00467     if( sc_is_running() ) {
00468         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00469     }
00470 
00471     // make sensitive
00472     switch( m_mode ) {
00473     case SC_METHOD_:
00474     case SC_THREAD_: {
00475         m_handle->add_static_event( interface_.posedge_event() );
00476         break;
00477     }
00478     case SC_NONE_:
00479         /* do nothing */
00480         break;
00481     }
00482 
00483     return *this;
00484 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const in_if_l_type interface_  ) 

sc_sensitive.cpp487 行で定義されています。

00488 {
00489     sc_deprecated_sensitive_pos();
00490     // check
00491     if( sc_is_running() ) {
00492         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00493     }
00494 
00495     // make sensitive
00496     switch( m_mode ) {
00497     case SC_METHOD_:
00498     case SC_THREAD_: {
00499         m_handle->add_static_event( interface_.posedge_event() );
00500         break;
00501     }
00502     case SC_NONE_:
00503         /* do nothing */
00504         break;
00505     }
00506 
00507     return *this;
00508 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const in_port_b_type port_  ) 

sc_sensitive.cpp511 行で定義されています。

00512 {
00513     sc_deprecated_sensitive_pos();
00514     // check
00515     if( sc_is_running() ) {
00516         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00517     }
00518 
00519     // make sensitive
00520     switch( m_mode ) {
00521     case SC_METHOD_: {
00522         port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() );
00523         break;
00524     }
00525     case SC_THREAD_: {
00526         port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() );
00527         break;
00528     }
00529     case SC_NONE_:
00530         /* do nothing */
00531         break;
00532     }
00533 
00534     return *this;
00535 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const in_port_l_type port_  ) 

sc_sensitive.cpp538 行で定義されています。

00539 {
00540     sc_deprecated_sensitive_pos();
00541     // check
00542     if( sc_is_running() ) {
00543         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00544     }
00545 
00546     // make sensitive
00547     switch( m_mode ) {
00548     case SC_METHOD_: {
00549         port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() );
00550         break;
00551     }
00552     case SC_THREAD_: {
00553         port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() );
00554         break;
00555     }
00556     case SC_NONE_:
00557         /* do nothing */
00558         break;
00559     }
00560 
00561     return *this;
00562 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const inout_port_b_type port_  ) 

sc_sensitive.cpp565 行で定義されています。

00566 {
00567     sc_deprecated_sensitive_pos();
00568     // check
00569     if( sc_is_running() ) {
00570         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00571     }
00572 
00573     // make sensitive
00574     switch( m_mode ) {
00575     case SC_METHOD_: {
00576         port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() );
00577         break;
00578     }
00579     case SC_THREAD_: {
00580         port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() );
00581         break;
00582     }
00583     case SC_NONE_:
00584         /* do nothing */
00585         break;
00586     }
00587 
00588     return *this;
00589 }

sc_sensitive_pos & sc_core::sc_sensitive_pos::operator<< ( const inout_port_l_type port_  ) 

sc_sensitive.cpp592 行で定義されています。

00593 {
00594     sc_deprecated_sensitive_pos();
00595     // check
00596     if( sc_is_running() ) {
00597         SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" );
00598     }
00599 
00600     // make sensitive
00601     switch( m_mode ) {
00602     case SC_METHOD_: {
00603         port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() );
00604         break;
00605     }
00606     case SC_THREAD_: {
00607         port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() );
00608         break;
00609     }
00610     case SC_NONE_:
00611         /* do nothing */
00612         break;
00613     }
00614 
00615     return *this;
00616 }

void sc_core::sc_sensitive_pos::reset (  ) 

sc_sensitive.cpp661 行で定義されています。

00662 {
00663     m_mode = SC_NONE_;
00664 }

sc_sensitive_pos& sc_core::sc_sensitive_pos::operator= ( const sc_sensitive_pos  )  [private]


フレンドと関連する関数

friend class sc_module [friend]

sc_sensitive.h163 行で定義されています。


変数

sc_sensitive.h208 行で定義されています。

enum { ... } sc_core::sc_sensitive_pos::m_mode [private]

sc_sensitive.h210 行で定義されています。


このクラスの説明は次のファイルから生成されました:

SystemCに対してFri Jun 6 20:12:02 2008に生成されました。  doxygen 1.5.6