libscratchcpp
A library for C++ based Scratch project players
Toggle main menu visibility
Loading...
Searching...
No Matches
asset.h
Go to the documentation of this file.
1
// SPDX-License-Identifier: Apache-2.0
2
3
#pragma once
4
5
#include "
entity.h
"
6
#include "spimpl.h"
7
#include "
global.h
"
8
9
namespace
libscratchcpp
10
{
11
12
class
Target
;
13
class
AssetPrivate;
14
16
class
LIBSCRATCHCPP_EXPORT
Asset
:
public
Entity
17
{
18
public
:
19
Asset
(
const
std::string &
name
,
const
std::string &
id
,
const
std::string &format);
20
Asset
(
const
Asset
&) =
delete
;
21
22
virtual
~Asset
();
23
24
void
setId
(
const
std::string &
id
);
25
26
const
std::string &
name
()
const
;
27
28
const
std::string &
fileName
()
const
;
29
30
const
std::string &
dataFormat
()
const
;
31
32
const
void
*
data
()
const
;
33
unsigned
int
dataSize
()
const
;
34
void
setData
(
unsigned
int
size,
void
*
data
);
35
36
Target
*
target
()
const
;
37
void
setTarget
(
Target
*
target
);
38
39
protected
:
40
virtual
void
processData
(
unsigned
int
size,
void
*
data
) { }
41
virtual
bool
isClone
()
const
{
return
false
; }
42
43
private
:
44
spimpl::unique_impl_ptr<AssetPrivate> impl;
45
};
46
47
}
// namespace libscratchcpp
libscratchcpp::Asset::fileName
const std::string & fileName() const
Definition
asset.cpp:40
libscratchcpp::Asset::dataFormat
const std::string & dataFormat() const
Definition
asset.cpp:46
libscratchcpp::Asset::isClone
virtual bool isClone() const
Definition
asset.h:41
libscratchcpp::Asset::setData
void setData(unsigned int size, void *data)
Definition
asset.cpp:64
libscratchcpp::Asset::data
const void * data() const
Definition
asset.cpp:52
libscratchcpp::Asset::target
Target * target() const
Definition
asset.cpp:76
libscratchcpp::Asset::name
const std::string & name() const
Definition
asset.cpp:34
libscratchcpp::Asset::Asset
Asset(const std::string &name, const std::string &id, const std::string &format)
Definition
asset.cpp:10
libscratchcpp::Asset::Asset
Asset(const Asset &)=delete
libscratchcpp::Asset::processData
virtual void processData(unsigned int size, void *data)
Definition
asset.h:40
libscratchcpp::Asset::setId
void setId(const std::string &id)
Definition
asset.cpp:27
libscratchcpp::Asset::dataSize
unsigned int dataSize() const
Definition
asset.cpp:58
libscratchcpp::Asset::setTarget
void setTarget(Target *target)
Definition
asset.cpp:82
libscratchcpp::Entity::Entity
Entity(const std::string &id)
Definition
entity.cpp:10
libscratchcpp::Target
The Target class is the Stage or a Sprite.
Definition
target.h:28
entity.h
global.h
LIBSCRATCHCPP_EXPORT
#define LIBSCRATCHCPP_EXPORT
Definition
global.h:17
libscratchcpp
The main namespace of the library.
Definition
asset.h:10
include
scratchcpp
asset.h
Generated by
1.17.0