source: trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Position.h @ 38

Last change on this file since 38 was 38, checked in by rosiere, 17 years ago

Interface et vhdl_testbench : l'appel aux fonction add_input et add_ouput est maintenant réalisé par la classe Interface (et autre).

2 remarques :

  • tester avec des sous composants (en particulier les sorties d'un est directement relié au sortie d'un autre)
  • Signal_testbench.cpp -> l'optimisé (par exemple pointeur de fonction afin d'éviter le test et le switch)
File size: 2.0 KB
Line 
1#ifdef POSITION
2#ifndef morpheo_behavioural_Position_h
3#define morpheo_behavioural_Position_h
4
5/*
6 * $Id$
7 *
8 * [ Description ]
9 *
10 */
11
12#include <stdint.h>
13#include <iostream>
14#include <list>
15#include "Behavioural/include/Entity.h"
16#include "Include/ToString.h"
17#include "Include/Debug.h"
18
19using namespace std;
20
21namespace morpheo              {
22namespace behavioural          {
23
24  class Position
25  {
26    // -----[ fields ]----------------------------------------------------
27  private   : Entity              * _entity        ;
28  private   : list<Entity *>      * _list_component;
29   
30    // -----[ methods ]---------------------------------------------------
31  public    :                       Position          (void);
32  public    :                       Position          (const Position & position);
33  public    :                       ~Position         ();
34
35  public    : Entity *              set_entity        (string        name   ,
36                                                       string        type   ,
37                                                       schema_t      schema );
38  private   : string                get_entity        (void);
39
40  public    : void                  set_component     (Position * position,
41                                                       uint32_t   pos_x  ,
42                                                       uint32_t   pos_y  ,
43                                                       uint32_t   size_x ,
44                                                       uint32_t   size_y );
45
46  private   : string                get_component     (void);
47
48  public    : void                  port_map          (string component1,
49                                                       string signal1   ,
50                                                       string component2,
51                                                       string signal2   );
52
53  public    : XML                   toXML             (void);
54
55  private   : Entity *              find_entity       (string name);
56  private   : Interface *           find_interface    (string   name  , 
57                                                       Entity * entity);
58
59  public    : void                  generate_file     (void);
60   
61  public    : friend ostream&       operator<<        (ostream& output_stream,
62                                                       morpheo::behavioural::Position & x);
63  };
64
65}; // end namespace behavioural         
66}; // end namespace morpheo             
67
68#endif
69#endif
Note: See TracBrowser for help on using the repository browser.