source: sources/src/sc_interface.h @ 27

Last change on this file since 27 was 27, checked in by buchmann, 15 years ago

SystemCASS now uses autoconf/automake to build the API. Regression tests still
use the old Makefiles.
(thanks to Nicolas Pouillon)

The library directory no longer is "lib-arch-system". The directory now is "lib-linux". Everyone needs to pay attention about SYSTEMCASS environment variable.

Changes:

  • system header includes
  • Add includes to config.h (generated by autoconf/automake)
  • test:
    • linux preprocessor macro instead of _WIN32
    • CONFIG_DEBUG instead of DEBUG

Removes:

  • Makefile
  • guess_endianness.cc
  • guess_os.sh
  • assert.h (we now use standard assert.h)
  • Options.def
File size: 1.9 KB
Line 
1/*------------------------------------------------------------\
2|                                                             |
3| Tool    :                  systemcass                       |
4|                                                             |
5| File    :                 sc_interface.h                    |
6|                                                             |
7| Author  :                 Buchmann Richard                  |
8|                                                             |
9| Date    :                   09_07_2004                      |
10|                                                             |
11\------------------------------------------------------------*/
12#ifndef __SC_INTERFACE_H__
13#define __SC_INTERFACE_H__
14
15#include "sc_fwd.h"
16#include "internal_ext.h"
17
18namespace sc_core {
19
20// ----------------------------------------------------------------------------
21//  CLASS : sc_interface
22//
23// 
24// ----------------------------------------------------------------------------
25class sc_interface
26{ 
27        ///////////
28        // Internal
29        private:  tab_t              *pointer; // pointeur dans la table de signaux
30                                         // NULL pour les sc_out/sc_inout
31  public:   inline tab_t       *get_pointer () const   { return pointer; }
32  public:   inline void         set_pointer (tab_t *i) { pointer = i; }
33        public:   size_t              data_size_in_bytes () const; /* nb of bytes */
34        protected:void                init        (size_t) const;
35        ///////////
36                                         
37        //////
38        // LRM
39public:
40                                         /*
41  virtual void register_port (sc_port_base & port_, const char *if_typename_);
42        */
43  /*virtual */const sc_event & default_event () const;
44  /*virtual */~ sc_interface ();
45protected:
46  // constructor
47    sc_interface ();
48private:
49  // disabled
50    sc_interface (const sc_interface &);
51    sc_interface & operator = (const sc_interface &);
52  //////
53};
54
55} // end of sc_core namespace
56
57#endif /* __SC_INTERFACE_H__ */
Note: See TracBrowser for help on using the repository browser.