SapFlow Probe
A low-cost HRM probe for measuring a tree's water consumption
sd_log.h File Reference
#include <SPI.h>
#include <SdFat.h>
#include <sdios.h>
#include "pinout.h"

Go to the source code of this file.

Functions

static ArduinoOutStream cout (Serial)
 Allows use of streams to print to Serial via cout. More...
 
String newfile (String fname, String suffix=".csv")
 Avoids file conflicts by renaming. More...
 

Variables

static SdFat sd
 File system object.
 

Function Documentation

◆ cout()

static ArduinoOutStream cout ( Serial  )
static

Allows use of streams to print to Serial via cout.

Returns
an ArduinoOutStream. Please don't use the return value.

◆ newfile()

String newfile ( String  fname,
String  suffix = ".csv" 
)

Avoids file conflicts by renaming.

Checks if the filename exists. If so, appends an integer. For example, if "test.csv" and "test(01).csv" are present in the file system and you call String x = newfile("test"); x will contain the string "test(02).csv"

Parameters
fnameThe desired file name (without the extension)
suffixThe file extension
Returns
the new filename it came up with.

Definition at line 5 of file sd_log.cpp.

5  {
6  String temp = fname + suffix; //< Start with the name provided
7  int i = 0;
8  // Try appending a number
9  while(sd.exists(temp.c_str())){
10  // If the first number didn't work, keep trying
11  // Note that this will hang if 00 through 99 are all taken
12  ++i;
13  char ones = i%10 + '0';
14  char tens = i/10 + '0';
15  temp = fname + '(' + tens + ones + ')' + suffix;
16  }
17  return temp;
18 }
sd
static SdFat sd
File system object.
Definition: sd_log.h:14