source: icGREP/icgrep-devel/icgrep/pablo/pe_sel.h @ 4199

Last change on this file since 4199 was 4199, checked in by nmedfort, 5 years ago

First stage of refactoring PabloE classes.

File size: 893 bytes
Line 
1/*
2 *  Copyright (c) 2014 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 *  icgrep is a trademark of International Characters.
5 */
6
7#ifndef PE_SEL_H
8#define PE_SEL_H
9
10#include "pe_pabloe.h"
11
12namespace pablo {
13
14class Sel : public PabloE
15{
16public:
17    Sel(PabloE* if_expr, PabloE* t_expr, PabloE* f_expr)
18    : PabloE(ClassTypeId::Sel)
19    , mIf_expr(if_expr)
20    , mT_expr(t_expr)
21    , mF_expr(f_expr)
22    {
23
24    }
25
26    virtual ~Sel() {
27        delete mIf_expr;
28        delete mT_expr;
29        delete mF_expr;
30    }
31
32    inline PabloE * getIf_expr() const {
33        return mIf_expr;
34    }
35
36    inline PabloE * getT_expr() const {
37        return mT_expr;
38    }
39
40    inline PabloE * getF_expr() const {
41        return mF_expr;
42    }
43
44private:
45    PabloE* mIf_expr;
46    PabloE* mT_expr;
47    PabloE* mF_expr;
48};
49
50}
51
52#endif // PE_SEL_H
53
Note: See TracBrowser for help on using the repository browser.