Commit Graph

75 Commits

Author SHA1 Message Date
Cameron Cawley
196b33bb7f PSP: Implement AbstractFSNode::createDirectory() 2019-08-26 11:38:47 +02:00
Cameron Cawley
db445bfc87 BACKENDS: Improve AbstractFSNode::createDirectory() stubs 2019-08-06 07:17:29 +03:00
Cameron Cawley
66ef50cfeb BACKENDS: Rename and simplify AbstractFSNode::create() 2019-08-06 07:17:29 +03:00
Colin Snover
042650157a PSP: Fix strict aliasing violation
Casting through pointer to void just to truncate a value to uint32
is incorrect.
2018-08-18 13:49:15 +02:00
Colin Snover
452e979101 PSP: Fix invalid return type of PspIoStream
The underlying API returns a SceUID, which is not valid to be
casted to a pointer.
2018-08-18 13:49:15 +02:00
Eugene Sandulenko
940b2a20f1 Revert "COMMON: Change way the Singleton instances are instantiated"
This reverts commit eefa72afa1.

With this patch ConfigManager is broken.
2017-07-10 21:17:41 +02:00
Thierry Crozat
eefa72afa1 COMMON: Change way the Singleton instances are instantiated
This fixes tons of warnings with clang from a recent xcode version on
macOS (and possibly other systems) complaining that an instantiation
of _singleton is required but no definition is available.
2017-07-10 21:11:20 +02:00
D G Turner
adbf18abca BACKENDS: Fix Shadowing Compiler Warning for isDirectory symbol.
This should ensure that any future cut-and-paste for new backends do not
repeat this same warning issue.
2017-01-12 08:22:40 +00:00
Alexander Tkachev
17fc40a944 CLOUD: Add AbstractFSNode::create() backends stubs 2016-08-24 16:07:55 +06:00
Johannes Schickel
2a7e57dd48 PSP: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Christoph Mallon
a78b2d777d JANITORIAL: Remove extra semicolons. 2011-11-27 12:54:22 +01:00
Ori Avtalion
aa0f307e06 ALL: Require DECLARE_SINGLETON to be used in the Common namepsace
Silences the clang warning:

  static data member specialization of '_singleton' must
  originally be declared in namespace 'Common'; accepted as a C++0x
  extension [-Wc++0x-extensions]

Wrapping "namespace Common {}" around the macro assignment causes clang
to complain about a spurious semicolon, and removing the semicolon at
the end of the macro causes some editors to misbehave.

Changing the requirement of using the macro in one namespace (the
global) to another (Common) seems a small price to pay to
silence a warning.
2011-06-30 22:41:41 +03:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn
2fa63ca015 COMMON: Forbid use of getcwd&getwd; add macro to enable unistd.h compatibility 2011-05-03 14:30:25 +02:00
Max Horn
ff6533e1b3 PSP: Fix more forbidden symbol clashes 2011-05-03 14:14:21 +02:00
Max Horn
f62fd4f25f BACKENDS: Avoid #including .cpp files
So far, the various *-fs-factory.cpp files were #including the
corresponding *-fs.cpp files. This is surprising and hence could lead to
all kinds of problems). To fix this, provide proper headers for the
*-fs.cpp files.
This also makes code reuse via subclassing possible.

Since not all ports were tested, this will likely lead to a few
easy to fix compile regressions.
2011-05-03 13:22:00 +02:00
Max Horn
2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Max Horn
9fb1e2b17e COMMON: Change wrapBufferedWriteStream() to always disposes wrapped stream
This is the only we need right now, and it saves a few bytes per
instance. The template approach I used before has the drawback that it
increases the binary size, which negates the benefit. Thanks to LordHoto
for pointing this out.

svn-id: r54344
2010-11-18 20:27:15 +00:00
Max Horn
152e52d015 COMMON: Make implementation of Buffered*Stream classes internal
svn-id: r54326
2010-11-18 17:02:51 +00:00
Max Horn
abe1959d36 COMMON: Simplify DECLARE_SINGLETON macro
This makes it possible to write
  DECLARE_SINGLETON(foo);
instead of
  DECLARE_SINGLETON(foo)
without causing a warning about an extra semicolon.
The extra semicolon helps some editors at parsing the C++ code.

svn-id: r54258
2010-11-16 08:23:13 +00:00
Jordi Vilalta Prat
8388e0dfea JANITORAL: Clean trailing whitespaces.
svn-id: r53160
2010-10-12 02:18:11 +00:00
Yotam Barnoy
a1b16661de PSP: remove virtual inheritance of BufferedWriteStream and BufferedSeekableReadStream
As Max pointed out to me, one can't really use virtual functions called from constructors/destructors.

svn-id: r52722
2010-09-14 14:00:15 +00:00
Yotam Barnoy
89b34faa5a PSP: fixed flag to open()
I was missing a flag (PSP_O_TRUNC) causing the config file to be opened on top of the old file, causing file corruption.

svn-id: r52387
2010-08-25 13:26:30 +00:00
Yotam Barnoy
b88f341b80 PSP: switched to using BufferedSeekableReadStream and BufferedWriteStream
The last PSP optimization made reading much faster, but writing isn't buffered so saving the config file was VERY slow.
I decided the cleanest way to do this would be to add BWS and use BSRS.

svn-id: r52327
2010-08-24 11:24:34 +00:00
Yotam Barnoy
a503f9223a PSP: switched from stdio to psp functions -- dramatic speed improvement
Turns out that stdio is about 30x(!) slower than using the PSP's functions. Very significant optimization.

svn-id: r52271
2010-08-22 10:48:13 +00:00
Yotam Barnoy
a21b9c7b96 PSP: fixed up PowerManager and removed dependency on SDL
svn-id: r49852
2010-06-15 13:10:00 +00:00
Yotam Barnoy
857f3ab550 PSP: faster way of getting file size
svn-id: r49457
2010-06-06 14:17:37 +00:00
Yotam Barnoy
f7ba7b4684 PSP: fixed issue with handling of EOS. Caused crashes.
svn-id: r49257
2010-05-27 06:11:50 +00:00
Yotam Barnoy
8b54efd8a6 PSP: implemented basic file cache. Turns out the PSP reads 1 byte as fast as it reads 1 KB.
svn-id: r49243
2010-05-26 14:43:25 +00:00
Yotam Barnoy
f036b6b9d2 PSP:Implemented fingolfin's suggestion for cleaning up debugging code
svn-id: r48792
2010-04-25 15:12:24 +00:00
Joost Peters
fe566293e7 remove useless getObjectName() method
svn-id: r48640
2010-04-12 11:43:14 +00:00
Max Horn
87028c546f PSP: Fix code formatting using astyle
svn-id: r48634
2010-04-12 07:28:54 +00:00
Yotam Barnoy
9a2eac7eee PSP: refactoring/redesign of the backend
svn-id: r48632
2010-04-12 06:49:05 +00:00
Johannes Schickel
40562798d6 Fix our DECLARE_SINGLETON macro to conform to the C++ specs.
We need to use a namespace Common { } there to make strict C++ compilers
like clang++ and comeau happy. I also added a slight comment about why
that is needed to the macro definition and a note that you need to use
it from the global namespace.

svn-id: r48254
2010-03-13 21:55:49 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Max Horn
8ba75fc522 Fix code formatting (esp. 'if(' -> 'if (' etc., but also indention and other things)
svn-id: r44495
2009-09-30 16:16:53 +00:00
Joost Peters
6a5bd81599 PSP: improved suspend/resume support [patch from bluddy]
svn-id: r44276
2009-09-23 16:11:23 +00:00
Torbjörn Andersson
e7469479ce Removed unnecessary semi-colons.
svn-id: r44048
2009-09-13 10:32:55 +00:00
Joost Peters
62bcb2e51b Commit (slightly) modified version of patch #2831248: Allow suspend/resume for PSP
svn-id: r43477
2009-08-17 12:57:37 +00:00
Joost Peters
aae6c98945 Properly implement PSPFilesystemFactory::makeCurrentDirectoryFileNode()
svn-id: r43404
2009-08-15 10:44:58 +00:00
Joost Peters
1a5f531d23 Allow building of psp backend via configure (Part 1 - Still need to add the fixup + EBOOT packing steps).
Thanks dhewg and fingolfin for assistance. :)

svn-id: r39693
2009-03-25 21:58:16 +00:00
Joost Peters
454610ff5a don't append '/' to path in getChildren()
svn-id: r36042
2009-01-24 20:46:20 +00:00
Max Horn
8f16458e9b Renamed FSNode::openForReading / openForWriting to createReadStream / createWriteStream, again to make ownership of the returned stream clear
svn-id: r36014
2009-01-23 03:41:36 +00:00
Max Horn
c7fde102e3 Renamed FilesystemNode -> FSNode
svn-id: r34716
2008-10-02 16:58:59 +00:00
Max Horn
7f18aaf8ec Pushed AbstractFilesystemNode::openForReading() / openForWriting() impls out to backends
svn-id: r34304
2008-09-03 12:56:46 +00:00
Max Horn
531bcf847c Moved FilesystemNode / FSList to namespace Common; also got rid of some 'typedef Common::String String;' name aliases
svn-id: r34302
2008-09-03 11:22:51 +00:00
Max Horn
cb21c25e41 FSNode code: Merged most versions of lastPathComponent() into one new AbstractFilesystemNode::lastPathComponent() method, with customizable path separator character
svn-id: r34197
2008-08-27 20:31:22 +00:00
Max Horn
5c99d45d9f Don't #include the FS factory implementations in common/system.cpp; rather, rely on the build system to include them
svn-id: r30957
2008-02-24 23:14:04 +00:00
Max Horn
80d55b0388 Renamed AbstractFilesystemFactory to FilesystemFactory
svn-id: r30935
2008-02-23 19:01:12 +00:00
Jordi Vilalta Prat
d6c34bdc4b Fixed the spaces before tabs.
svn-id: r30667
2008-01-28 00:14:17 +00:00