blob: 48e53cd2a95f19e324297cdd19c2bfb0196cbc66 (
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
|
/*
* pcr_includes.h - OpenPCR control software.
* Copyright (C) 2010-2011 Josh Perfetto. All Rights Reserved.
*
* OpenPCR control software is free software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* OpenPCR control software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with
* the OpenPCR control software. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _PCR_INCLUDES_H_
#define _PCR_INCLUDES_H_
//#define DEBUG_DISPLAY
#include "WProgram.h"
#include <avr/pgmspace.h>
class Thermocycler;
extern Thermocycler* gpThermocycler;
inline Thermocycler& GetThermocycler() { return *gpThermocycler; }
//fixes for incomplete C++ implementation, defined in util.cpp
void* operator new(size_t size);
void operator delete(void * ptr);
extern "C" void __cxa_pure_virtual(void);
//defines
#define STEP_NAME_LENGTH 16
#define MAX_CYCLE_ITEMS 16
#define MAX_COMMAND_SIZE 256
enum PcrStatus {
ESuccess = 0,
ETooManySteps = 32,
ENoProgram,
ENoPower
};
#define SUCCEEDED(status) (status == ESuccess)
void sprintFloat(char* str, float val, int decimalDigits, boolean pad);
unsigned short htons(unsigned short val);
double absf(double val);
char* rps(const char* progString);
#endif
|