aboutsummaryrefslogtreecommitdiffstats
path: root/ext/files.lv2/files.h
diff options
context:
space:
mode:
Diffstat (limited to 'ext/files.lv2/files.h')
-rw-r--r--ext/files.lv2/files.h82
1 files changed, 47 insertions, 35 deletions
diff --git a/ext/files.lv2/files.h b/ext/files.lv2/files.h
index 4f0564f..4b93331 100644
--- a/ext/files.lv2/files.h
+++ b/ext/files.lv2/files.h
@@ -1,24 +1,29 @@
-/* lv2_files.h - C header file for the LV2 Files extension.
- * Copyright (C) 2010 Leonard Ritter <paniq@paniq.org>
- *
- * This header is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published
- * by the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This header is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this header; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place, Suite 330, Boston, MA 01222-1307 USA
- */
-
-/** @file
- * C header for the LV2 Files extension <http://lv2plug.in/ns/ext/files>.
- */
+/*
+ Copyright 2010-2011 David Robillard <d@drobilla.net>
+
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of this software and associated documentation files (the "Software"),
+ to deal in the Software without restriction, including without limitation
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ and/or sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+/**
+ @file files.h
+ C API for the LV2 Files extension <http://lv2plug.in/ns/ext/files>.
+*/
#ifndef LV2_FILES_H
#define LV2_FILES_H
@@ -31,24 +36,31 @@ extern "C" {
typedef void* LV2_Files_FileSupport_Data;
-/** Feature structure passed by host to instantiate with feature URI
- * <http://lv2plug.in/ns/ext/files#fileSupport>.
- */
+/**
+ files:FileSupport feature struct.
+
+ To support this feature, the host MUST pass an LV2_Feature struct with @a
+ URI "http://lv2plug.in/ns/ext/files#fileSupport" and @ data pointed to an
+ instance of this struct.
+*/
typedef struct {
+ /**
+ Opaque host data.
+ */
LV2_Files_FileSupport_Data data;
- /** Return the full path that should be used for a file owned by this
- * plugin called @a name. The plugin can assume @a name belongs to a
- * namespace dedicated to that plugin instance (i.e. hosts MUST ensure
- * this, e.g. by giving each plugin its own directory for files, or
- * mangling filenames somehow).
- *
- * @param data MUST be the @a data member of this struct.
- * @param name The name of the file.
- * @return A newly allocated path which the plugin may use to create a new
- * file. The plugin is responsible for freeing the returned string.
- */
+ /**
+ Return the full path that should be used for a file owned by this
+ plugin called @a name. The plugin can assume @a name belongs to a
+ namespace dedicated to that plugin instance (i.e. hosts MUST ensure
+ this, e.g. by giving each plugin instance its own files directory).
+
+ @param data MUST be the @a data member of this struct.
+ @param name The name of the file.
+ @return A newly allocated path which the plugin may use to create a new
+ file. The plugin is responsible for freeing the returned string.
+ */
char* new_file_path(LV2_Files_FileSupport_Data data,
const char* name);