OpenShot Audio Library | OpenShotAudio 0.3.2

Loading...
Searching...
No Matches
juce_FileInputSource.cpp
1/*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2017 - ROLI Ltd.
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 The code included in this file is provided under the terms of the ISC license
11 http://www.isc.org/downloads/software-support-policy/isc-license. Permission
12 To use, copy, modify, and/or distribute this software for any purpose with or
13 without fee is hereby granted provided that the above copyright notice and
14 this permission notice appear in all copies.
15
16 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
17 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
18 DISCLAIMED.
19
20 ==============================================================================
21*/
22
23 namespace juce
24{
25
26 FileInputSource::FileInputSource (const File& f, bool useFileTimeInHash)
27 : file (f), useFileTimeInHashGeneration (useFileTimeInHash)
28{
29}
30
31 FileInputSource::~FileInputSource()
32{
33}
34
35 InputStream* FileInputSource::createInputStream()
36{
37 return file.createInputStream();
38}
39
40 InputStream* FileInputSource::createInputStreamFor (const String& relatedItemPath)
41{
42 return file.getSiblingFile (relatedItemPath).createInputStream();
43}
44
45int64 FileInputSource::hashCode() const
46{
47 int64 h = file.hashCode();
48
49 if (useFileTimeInHashGeneration)
50 h ^= file.getLastModificationTime().toMilliseconds();
51
52 return h;
53}
54
55} // namespace juce
juce::FileInputSource::~FileInputSource
~FileInputSource() override
Definition: juce_FileInputSource.cpp:31
juce::FileInputSource::hashCode
int64 hashCode() const override
Definition: juce_FileInputSource.cpp:45
juce::FileInputSource::createInputStreamFor
InputStream * createInputStreamFor(const String &relatedItemPath) override
Definition: juce_FileInputSource.cpp:40
juce::FileInputSource::createInputStream
InputStream * createInputStream() override
Definition: juce_FileInputSource.cpp:35
juce::FileInputSource::FileInputSource
FileInputSource(const File &file, bool useFileTimeInHashGeneration=false)
Definition: juce_FileInputSource.cpp:26
juce::File
Definition: juce_File.h:41
juce::File::getLastModificationTime
Time getLastModificationTime() const
Definition: juce_File.cpp:532
juce::File::getSiblingFile
File getSiblingFile(StringRef siblingFileName) const
Definition: juce_File.cpp:471
juce::File::hashCode
int hashCode() const
Definition: juce_File.cpp:398
juce::File::createInputStream
FileInputStream * createInputStream() const
Definition: juce_File.cpp:729
juce::InputStream
Definition: juce_InputStream.h:37
juce::String
Definition: juce_String.h:39
juce::Time::toMilliseconds
int64 toMilliseconds() const noexcept
Definition: juce_Time.h:98