summaryrefslogtreecommitdiff
path: root/apps/JAWS/remora/app/Remora_Import.h
blob: 8cfecd84ac494fd17785504e687e88e4783219f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
// $Id

// ===================================================================
// 
// = FILENAME
//    Remora_Import.h
//
// = AUTHOR
//    Seth Widoff
// 
// ===================================================================

#ifndef REMORA_IMPORT_H
#define REMORA_IMPORT_H

#include <bstring.h>
#include "remora_c.hh"

#define NO_NAME  "Unnamed Statistic"
#define MAX_VALUE 100
#define CONTROL_AGENT_NAME "Remora Controls Agent"

class Remora_Import
{
public:

  Remora_Import(const char * label = NO_NAME, int value = 0,
		int min_value = 0, int max_value = MAX_VALUE);

  Remora_Import(const Remora_Import& import);

  ~Remora_Import();

  CORBA::Long get(void);
  
  operator CORBA::Long();

  friend int operator==( Remora_Import& me,  int new_value);
  friend int operator==( Remora_Import& me,  Remora_Import& export);

  friend int operator!=( Remora_Import& me,  int new_value);
  friend int operator!=( Remora_Import& me,  Remora_Import& export);
  
  friend int operator<=( Remora_Import& me,  int new_value);
  friend int operator<=( Remora_Import& me,  Remora_Import& export);
  
  friend int operator>=( Remora_Import& me,  int new_value);
  friend int operator>=( Remora_Import& me,  Remora_Import& export);
  
  friend int operator<( Remora_Import& me,  int new_value);
  friend int operator<( Remora_Import& me,  Remora_Import& export);

  friend int operator>( Remora_Import& me,  int new_value);
  friend int operator>( Remora_Import& me,  Remora_Import& export);

private:

  void init();

  CORBA::Long grab_value();

  remora::Control control_;

  remora::Remora_Controls_Agent_ptr remora_agent_;
  
};

#include "Remora_Import.i"
#endif