Ocean
OILImageSequence.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) Meta Platforms, Inc. and affiliates.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 #ifndef META_OCEAN_MEDIA_OPEN_IMAGE_LIBRARIES_OL_IMAGE_SEQUENCE_H
9 #define META_OCEAN_MEDIA_OPEN_IMAGE_LIBRARIES_OL_IMAGE_SEQUENCE_H
10 
12 
14 
15 namespace Ocean
16 {
17 
18 namespace Media
19 {
20 
21 namespace OpenImageLibraries
22 {
23 
24 /**
25  * This class implements an image sequence for OpenImageLibraries.
26  * @ingroup mediaoil
27  */
28 class OCEAN_MEDIA_OIL_EXPORT OILImageSequence : virtual public ImageFileSequence
29 {
30  friend class OILLibrary;
31 
32  public:
33 
34  /**
35  * Clones this medium and returns a new independent instance of this medium.
36  * @see Medium::clone().
37  */
38  MediumRef clone() const override;
39 
40  protected:
41 
42  /**
43  * Creates a new medium by a given url.
44  * @param url Url of the medium
45  */
46  explicit OILImageSequence(const std::string& url);
47 
48  /**
49  * Destructs an image sequence object.
50  */
51  ~OILImageSequence() override;
52 
53  /**
54  * Loads a new image specified by the filename.
55  * @see ImageSequence::loadImage().
56  */
57  bool loadImage(const std::string& filename, const Timestamp timestamp, Frame* frame = nullptr) override;
58 };
59 
60 }
61 
62 }
63 
64 }
65 
66 #endif // META_OCEAN_MEDIA_OPEN_IMAGE_LIBRARIES_OL_IMAGE_SEQUENCE_H
This class implements Ocean's image class.
Definition: Frame.h:1792
Definition: ImageFileSequence.h:30
This class implements an image sequence for OpenImageLibraries.
Definition: OILImageSequence.h:29
~OILImageSequence() override
Destructs an image sequence object.
bool loadImage(const std::string &filename, const Timestamp timestamp, Frame *frame=nullptr) override
Loads a new image specified by the filename.
OILImageSequence(const std::string &url)
Creates a new medium by a given url.
MediumRef clone() const override
Clones this medium and returns a new independent instance of this medium.
This class implements the OpenImageLibraries library.
Definition: OILLibrary.h:30
This template class implements a object reference with an internal reference counter.
Definition: base/ObjectRef.h:58
This class implements a timestamp.
Definition: Timestamp.h:36
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15