rc_abstract_interface_wrapper Class Template Reference

#include <rc_abstract_interface_wrapper.h>

Inheritance diagram for rc_abstract_interface_wrapper:

rc_abstract_interface_wrapper_b rc_interface_wrapper rc_interface_wrapper_base rc_event_forwarder_host rc_interface_wrapper_base rc_abstract_exportal::interface_wrapper rc_portal_b::interface_wrapper

List of all members.


Detailed Description

template<class IF>
class ReChannel::rc_abstract_interface_wrapper< IF >

Abstract interface wrapper class.

Definition at line 216 of file rc_abstract_interface_wrapper.h.


Public Types

typedef
rc_interface_wrapper
< IF > 
interface_wrapper_type
typedef
rc_interface_wrapper
< IF >::accessor 
accessor_type

Public Member Functions

virtual interface_access get_interface_access ()
virtual
nb_interface_access 
get_nb_interface_access ()
virtual driver_access get_driver_access (int driver_index)
virtual nb_driver_access get_nb_driver_access (int driver_index)
virtual int get_driver_count () const
virtual int get_nb_driver_count () const
virtual sc_interface & get_wrapped_interface () const

Protected Types

typedef
rc_interface_wrapper
< IF >
::interface_access 
interface_access
typedef
rc_interface_wrapper
< IF >
::nb_interface_access 
nb_interface_access
typedef
rc_interface_wrapper
< IF >
::driver_access 
driver_access
typedef
rc_interface_wrapper
< IF >
::nb_driver_access 
nb_driver_access

Protected Member Functions

 rc_abstract_interface_wrapper ()
 rc_abstract_interface_wrapper (IF &if_)
IF & get_wrapped_if () const
virtual bool set_wrapped_interface (sc_interface &if_)
virtual bool set_wrapped_interface (IF &if_)
virtual IF & rc_get_fallback_if () const
virtual IF * nb_interface_access_callback ()
virtual IF * interface_access_callback ()
virtual
rc_nb_driver_object
< IF >
::driver_access
nb_driver_access_callback (int driver_index)
virtual
rc_driver_object< IF >
::driver_access
driver_access_callback (int driver_index)
rc_driver_object< IF > & get_driver_object (int index)
 returns a (possibly newly created) blocking driver by its index
rc_nb_driver_object
< IF > & 
get_nb_driver_object (int index)
 returns a (possibly newly created) non-blocking driver by its index
rc_event_forwarder
< IF > & 
add_event_forwarder (const sc_event &source_event, boost::function< const sc_event &(IF *)> event_getter, const std::string &event_name=NULL)
 creates an event forwarder for the specified event getter method
rc_event_forwarder
< IF > & 
add_event_forwarder (IF &trigger_if, boost::function< const sc_event &(IF *)> event_getter, const std::string &event_name=NULL)
 creates an event forwarder for the specified event getter method
virtual ~rc_abstract_interface_wrapper ()

Private Types

typedef
rc_abstract_interface_wrapper_b 
base_type
typedef
rc_driver_object< IF > 
drv_obj_type
typedef
rc_nb_driver_object
< IF > 
nb_drv_obj_type

Private Member Functions

 RC_STATIC_ASSERT_VALID_INTERFACE (IF)
virtual void * _rc_create_driver_object (void *if_) const
virtual void * _rc_create_nb_driver_object (void *if_) const
virtual void _rc_set_driver_channel (void *drv_obj, void *if_) const
virtual void _rc_set_nb_driver_channel (void *nb_drv_obj, void *if_) const
virtual void _rc_delete_driver_object (void *drv_obj) const
virtual void _rc_delete_nb_driver_object (void *nb_drv_obj) const

Member Typedef Documentation

typedef rc_abstract_interface_wrapper_b base_type [private]

Reimplemented in rc_abstract_exportal::interface_wrapper, and rc_portal_b::interface_wrapper.

Definition at line 223 of file rc_abstract_interface_wrapper.h.

typedef rc_driver_object<IF> drv_obj_type [private]

Definition at line 224 of file rc_abstract_interface_wrapper.h.

typedef rc_nb_driver_object<IF> nb_drv_obj_type [private]

Definition at line 225 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF>::interface_access interface_access [protected]

Definition at line 229 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF>::nb_interface_access nb_interface_access [protected]

Definition at line 231 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF>::driver_access driver_access [protected]

Definition at line 233 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF>::nb_driver_access nb_driver_access [protected]

Definition at line 235 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF> interface_wrapper_type

Definition at line 238 of file rc_abstract_interface_wrapper.h.

typedef rc_interface_wrapper<IF>::accessor accessor_type

Reimplemented in rc_abstract_exportal::interface_wrapper, and rc_portal_b::interface_wrapper.

Definition at line 239 of file rc_abstract_interface_wrapper.h.


Constructor & Destructor Documentation

rc_abstract_interface_wrapper (  )  [inline, protected]

Definition at line 359 of file rc_abstract_interface_wrapper.h.

rc_abstract_interface_wrapper ( IF &  if_  )  [inline, explicit, protected]

Definition at line 364 of file rc_abstract_interface_wrapper.h.

~rc_abstract_interface_wrapper (  )  [inline, protected, virtual]

Definition at line 370 of file rc_abstract_interface_wrapper.h.


Member Function Documentation

RC_STATIC_ASSERT_VALID_INTERFACE ( IF   )  [private]

Reimplemented from rc_interface_wrapper.

virtual interface_access get_interface_access (  )  [inline, virtual]

Implements rc_interface_wrapper.

Definition at line 248 of file rc_abstract_interface_wrapper.h.

virtual nb_interface_access get_nb_interface_access (  )  [inline, virtual]

Implements rc_interface_wrapper.

Definition at line 251 of file rc_abstract_interface_wrapper.h.

virtual driver_access get_driver_access ( int  driver_index  )  [inline, virtual]

Implements rc_interface_wrapper.

Definition at line 254 of file rc_abstract_interface_wrapper.h.

virtual nb_driver_access get_nb_driver_access ( int  driver_index  )  [inline, virtual]

Implements rc_interface_wrapper.

Definition at line 257 of file rc_abstract_interface_wrapper.h.

virtual int get_driver_count (  )  const [inline, virtual]

Reimplemented from rc_abstract_interface_wrapper_b.

Definition at line 260 of file rc_abstract_interface_wrapper.h.

virtual int get_nb_driver_count (  )  const [inline, virtual]

Reimplemented from rc_abstract_interface_wrapper_b.

Definition at line 263 of file rc_abstract_interface_wrapper.h.

virtual sc_interface& get_wrapped_interface (  )  const [inline, virtual]

Implements rc_interface_wrapper_base.

Definition at line 266 of file rc_abstract_interface_wrapper.h.

IF& get_wrapped_if (  )  const [inline, protected]

Reimplemented from rc_abstract_interface_wrapper_b.

Definition at line 271 of file rc_abstract_interface_wrapper.h.

Referenced by rc_abstract_interface_wrapper::get_wrapped_interface().

bool set_wrapped_interface ( sc_interface &  if_  )  [inline, protected, virtual]

Implements rc_interface_wrapper_base.

Definition at line 403 of file rc_abstract_interface_wrapper.h.

Referenced by rc_portal_b::end_of_elaboration().

virtual bool set_wrapped_interface ( IF &  if_  )  [inline, protected, virtual]

Implements rc_interface_wrapper.

Definition at line 276 of file rc_abstract_interface_wrapper.h.

IF & rc_get_fallback_if (  )  const [inline, protected, virtual]

Definition at line 416 of file rc_abstract_interface_wrapper.h.

virtual IF* nb_interface_access_callback (  )  [inline, protected, virtual]

Implements rc_interface_wrapper.

Definition at line 281 of file rc_abstract_interface_wrapper.h.

virtual IF* interface_access_callback (  )  [inline, protected, virtual]

Implements rc_interface_wrapper.

Definition at line 284 of file rc_abstract_interface_wrapper.h.

virtual rc_nb_driver_object<IF>::driver_access* nb_driver_access_callback ( int  driver_index  )  [inline, protected, virtual]

Implements rc_interface_wrapper.

Definition at line 288 of file rc_abstract_interface_wrapper.h.

virtual rc_driver_object<IF>::driver_access* driver_access_callback ( int  driver_index  )  [inline, protected, virtual]

Implements rc_interface_wrapper.

Definition at line 292 of file rc_abstract_interface_wrapper.h.

rc_driver_object< IF > & get_driver_object ( int  index  )  [inline, protected]

returns a (possibly newly created) blocking driver by its index

Definition at line 432 of file rc_abstract_interface_wrapper.h.

Referenced by rc_abstract_interface_wrapper::driver_access_callback().

rc_nb_driver_object< IF > & get_nb_driver_object ( int  index  )  [inline, protected]

returns a (possibly newly created) non-blocking driver by its index

Definition at line 444 of file rc_abstract_interface_wrapper.h.

Referenced by rc_abstract_interface_wrapper::nb_driver_access_callback().

rc_event_forwarder< IF > & add_event_forwarder ( const sc_event &  source_event,
boost::function< const sc_event &(IF *)>  event_getter,
const std::string &  event_name = NULL 
) [inline, protected]

creates an event forwarder for the specified event getter method

Definition at line 378 of file rc_abstract_interface_wrapper.h.

Referenced by rc_abstract_interface_wrapper::add_event_forwarder(), and rc_abstract_exportal::interface_wrapper::interface_wrapper().

rc_event_forwarder< IF > & add_event_forwarder ( IF &  trigger_if,
boost::function< const sc_event &(IF *)>  event_getter,
const std::string &  event_name = NULL 
) [inline, protected]

creates an event forwarder for the specified event getter method

Definition at line 392 of file rc_abstract_interface_wrapper.h.

void * _rc_create_driver_object ( void *  if_  )  const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 454 of file rc_abstract_interface_wrapper.h.

void * _rc_create_nb_driver_object ( void *  if_  )  const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 462 of file rc_abstract_interface_wrapper.h.

void _rc_set_driver_channel ( void *  drv_obj,
void *  if_ 
) const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 470 of file rc_abstract_interface_wrapper.h.

void _rc_set_nb_driver_channel ( void *  nb_drv_obj,
void *  if_ 
) const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 479 of file rc_abstract_interface_wrapper.h.

void _rc_delete_driver_object ( void *  drv_obj  )  const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 489 of file rc_abstract_interface_wrapper.h.

void _rc_delete_nb_driver_object ( void *  nb_drv_obj  )  const [inline, private, virtual]

Implements rc_abstract_interface_wrapper_b.

Definition at line 498 of file rc_abstract_interface_wrapper.h.


The documentation for this class was generated from the following file:
Generated on Tue Jan 1 23:14:12 2008 for ReChannel by  doxygen 1.5.3