summaryrefslogtreecommitdiffstats
path: root/includes/newmods.hpp
blob: c871e46d445de480261ef8d6535e467aa1ab83d5 (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
//-*- mode: c++; indent-tabs-mode: t; coding: utf-8; show-trailing-whitespace: t -*-

// file newmods.hpp

#ifndef _NEWMODS_HPP
#define _NEWMODS_HPP

// System includes.

#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <cstdint>
#include <vector>

// Local includes.

#include "blkcom.hpp"
#include "labcom.hpp"
#include "emtp.hpp"

// Macros.
#define NUMLST 28
#define NUMKEX 7

// Types.
namespace emtp {

  enum tagJBLTypes {
    JBLTYPE_NULL = 0x00,
    JBLTYPE_STRING = 0x01,
    JBLTYPE_INTEGER = 0x04,
    JBLTYPE_DOUBLE = 0x08,
    JBLTYPE_COMPLEX_DOUBLE = 0x10
  };

  typedef enum tagJBLTypes tJBLTypes;

  struct tagVariable {
    std::string m_sName;
    std::string m_sNameSpace;
    int m_nSize;
    tJBLTypes m_sType;
  };

  typedef struct tagVariable tVariable;

  // Global variables.

  extern tVariable pVariables[];

  // Prototypes.

  bool vardim(const std::string &, std::vector<long int> &);
  bool dimens(std::vector<long int> &, const int &, std::string &, std::string &);
  bool cleanup(void);

}

#endif // _NEWMODS_HPP

// end of file newmods.hpp