PIP_NO_FILESYSTEM and PIP_NO_THREADS
This commit is contained in:
@@ -35,6 +35,7 @@
|
||||
|
||||
class PIFile;
|
||||
class PIStringList;
|
||||
class PIInit;
|
||||
|
||||
|
||||
class PIP_EXPORT __PIInit_Initializer__ {
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
You should have received a copy of the GNU Lesser General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
#include "pidir.h"
|
||||
|
||||
#include "piincludes_p.h"
|
||||
@@ -610,3 +611,4 @@ void PIDir::CurrentDirOverrider::save(const PIFile::FileInfo & info) {
|
||||
else
|
||||
PIDir::setCurrent(PIDir::current().path() + PIDir::separator + p);
|
||||
}
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "piregularexpression.h"
|
||||
|
||||
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
//! \ingroup IO
|
||||
//! \~\brief
|
||||
//! \~english Local directory.
|
||||
@@ -217,8 +218,10 @@ private:
|
||||
|
||||
PIString path_, scan_;
|
||||
};
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
inline bool operator<(const PIFile::FileInfo & v0, const PIFile::FileInfo & v1) {
|
||||
return (v0.path < v1.path);
|
||||
}
|
||||
@@ -242,6 +245,7 @@ inline PICout operator<<(PICout s, const PIDir & v) {
|
||||
s.restoreControls();
|
||||
return s;
|
||||
}
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
|
||||
#endif // PIDIR_H
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
#include "pifile.h"
|
||||
|
||||
#include "pidir.h"
|
||||
@@ -635,3 +636,4 @@ int PIFile::writeAll(const PIString & path, const PIByteArray & data) {
|
||||
f.clear();
|
||||
return f.write(data.data(), data.size_s());
|
||||
}
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "pipropertystorage.h"
|
||||
|
||||
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
//! \ingroup IO
|
||||
//! \~\brief
|
||||
//! \~english Local file.
|
||||
@@ -345,8 +346,10 @@ private:
|
||||
llong _size = -1;
|
||||
PIString prec_str;
|
||||
};
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
|
||||
#ifndef PIP_NO_FILESYSTEM
|
||||
//! \relatesalso PICout
|
||||
//! \~english Output operator to \a PICout
|
||||
//! \~russian Оператор вывода в \a PICout
|
||||
@@ -377,5 +380,6 @@ BINARY_STREAM_READ(PIFile::FileInfo) {
|
||||
v.perm_group.raw >> v.perm_other.raw;
|
||||
return s;
|
||||
}
|
||||
#endif // PIP_NO_FILESYSTEM
|
||||
|
||||
#endif // PIFILE_H
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
# define PIP_NO_THREADS
|
||||
# endif
|
||||
# ifndef LWIP
|
||||
# define PIP_NO_SOCKET
|
||||
# define PIP_NO_SOCKET
|
||||
# endif
|
||||
# define PISERIAL_NO_PINS
|
||||
#endif
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
# define _WIN32_WINNT 0x0600
|
||||
#endif
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
#include "piconditionvar.h"
|
||||
#include "piincludes_p.h"
|
||||
#ifdef WINDOWS
|
||||
@@ -179,3 +180,4 @@ void PIConditionVariable::notifyAll() {
|
||||
pthread_cond_broadcast(&PRIVATE->nativeHandle);
|
||||
#endif
|
||||
}
|
||||
#endif // PIP_NO_THREADS
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "pisystemtime.h"
|
||||
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
/**
|
||||
* \brief A condition variable is an object able to block the calling thread until notified to resume.
|
||||
*
|
||||
@@ -121,5 +122,5 @@ private:
|
||||
PRIVATE_DECLARATION(PIP_EXPORT)
|
||||
};
|
||||
|
||||
|
||||
#endif // PIP_NO_THREADS
|
||||
#endif // PICONDITIONVAR_H
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
//! \}
|
||||
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
#include "pimutex.h"
|
||||
|
||||
#include "piincludes_p.h"
|
||||
@@ -228,3 +229,4 @@ void PIMutex::destroy() {
|
||||
pthread_mutex_destroy(&(PRIVATE->mutex));
|
||||
#endif
|
||||
}
|
||||
#endif // PIP_NO_THREADS
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "piinit.h"
|
||||
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
class PIP_EXPORT PIMutex {
|
||||
public:
|
||||
NO_COPY_CLASS(PIMutex);
|
||||
@@ -85,5 +86,5 @@ private:
|
||||
bool cond;
|
||||
};
|
||||
|
||||
|
||||
#endif // PIP_NO_THREADS
|
||||
#endif // PIMUTEX_H
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
#include "pithread.h"
|
||||
|
||||
#include "piincludes_p.h"
|
||||
@@ -1086,3 +1087,4 @@ bool PIThread::_waitForFinish(PISystemTime max_tm) {
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
#endif // PIP_NO_THREADS
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
class PIThread;
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
#ifndef MICRO_PIP
|
||||
class PIIntrospectionThreads;
|
||||
|
||||
@@ -304,5 +305,5 @@ private:
|
||||
void setThreadName();
|
||||
};
|
||||
|
||||
|
||||
#endif // PIP_NO_THREADS
|
||||
#endif // PITHREAD_H
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
#include "pitimer.h"
|
||||
|
||||
#include "piconditionvar.h"
|
||||
@@ -302,3 +303,4 @@ void PITimer::stop() {
|
||||
thread->stop();
|
||||
event.notifyAll();
|
||||
}
|
||||
#endif // PIP_NO_THREADS
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
class PIThread;
|
||||
|
||||
#ifndef PIP_NO_THREADS
|
||||
class PIP_EXPORT PITimer: public PIObject {
|
||||
PIOBJECT_SUBCLASS(PITimer, PIObject);
|
||||
|
||||
@@ -209,5 +210,5 @@ protected:
|
||||
PIConditionVariable event;
|
||||
};
|
||||
|
||||
|
||||
#endif // PIP_NO_THREADS
|
||||
#endif // PITIMER_H
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
# include "pisystemtests.h"
|
||||
#elif defined(ARDUINO)
|
||||
# include <Arduino.h>
|
||||
#elif defined(PICO_SDK)
|
||||
# include "hardware/time.h"
|
||||
#endif
|
||||
#ifdef MICRO_PIP
|
||||
# include <sys/time.h>
|
||||
@@ -48,28 +50,13 @@
|
||||
void piUSleep(int usecs) {
|
||||
if (usecs <= 0) return;
|
||||
#ifdef WINDOWS
|
||||
// printf("Sleep %d\n", usecs / 1000);
|
||||
if (usecs > 0) Sleep(usecs / 1000);
|
||||
// printf("Sleep end");
|
||||
#else
|
||||
# ifdef FREERTOS
|
||||
Sleep(usecs / 1000);
|
||||
#elif defined(FREERTOS)
|
||||
vTaskDelay(usecs / 1000 / portTICK_PERIOD_MS);
|
||||
# else
|
||||
# ifdef MICRO_PIP
|
||||
if (usecs > 0) {
|
||||
struct timeval start;
|
||||
gettimeofday(&start, nullptr);
|
||||
long long elapsed = 0;
|
||||
while (elapsed < usecs) {
|
||||
struct timeval now;
|
||||
gettimeofday(&now, nullptr);
|
||||
elapsed = (now.tv_sec - start.tv_sec) * 1000000LL + (now.tv_usec - start.tv_usec);
|
||||
}
|
||||
}
|
||||
# else
|
||||
#elif defined(PICO_SDK)
|
||||
sleep_us(usecs);
|
||||
#else
|
||||
usecs -= PISystemTests::usleep_offset_us;
|
||||
if (usecs > 0) usleep(usecs);
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user