blob: 1bb74fb755026ac194981ef90f5adde94cf592dc [file] [log] [blame]
/*
* Copyright 2006 The Android Open Source Project
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "SkEvent.h"
#include "SkMalloc.h"
void SkEvent::initialize(const char* type) {
fType = nullptr;
setType(type);
f32 = 0;
}
SkEvent::SkEvent() {
initialize("");
}
SkEvent::SkEvent(const SkEvent& src) {
*this = src;
setType(src.fType);
}
SkEvent::SkEvent(const char type[]) {
SkASSERT(type);
initialize(type);
}
SkEvent::~SkEvent() {
sk_free(fType);
}
bool SkEvent::isType(const char type[]) const {
size_t typeLen = strlen(type);
return strncmp(fType, type, typeLen) == 0 && fType[typeLen] == 0;
}
void SkEvent::setType(const char type[]) {
size_t typeLen = strlen(type);
fType = (char*) sk_malloc_throw(typeLen + 1);
memcpy(fType, type, typeLen);
fType[typeLen] = 0;
}