tageditor/cli/mainfeatures.h

59 lines
2.9 KiB
C
Raw Normal View History

2015-04-22 19:33:53 +02:00
#ifndef MAINFEATURES_H
#define MAINFEATURES_H
2015-11-28 00:20:49 +01:00
#include <c++utilities/application/argumentparser.h>
2015-04-22 19:33:53 +02:00
namespace ApplicationUtilities {
class Argument;
}
namespace Cli {
2015-11-28 00:20:49 +01:00
struct SetTagInfoArgs
{
SetTagInfoArgs(ApplicationUtilities::Argument &filesArg, ApplicationUtilities::Argument &verboseArg);
ApplicationUtilities::Argument &filesArg;
ApplicationUtilities::Argument &verboseArg;
ApplicationUtilities::Argument docTitleArg;
ApplicationUtilities::Argument removeOtherFieldsArg;
ApplicationUtilities::Argument treatUnknownFilesAsMp3FilesArg;
ApplicationUtilities::Argument id3v1UsageArg;
ApplicationUtilities::Argument id3v2UsageArg;
ApplicationUtilities::Argument mergeMultipleSuccessiveTagsArg;
ApplicationUtilities::Argument id3v2VersionArg;
2016-08-05 01:48:36 +02:00
ApplicationUtilities::Argument id3InitOnCreateArg;
ApplicationUtilities::Argument id3TransferOnRemovalArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument encodingArg;
ApplicationUtilities::Argument removeTargetArg;
ApplicationUtilities::Argument addAttachmentArg;
ApplicationUtilities::Argument updateAttachmentArg;
ApplicationUtilities::Argument removeAttachmentArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument removeExistingAttachmentsArg;
ApplicationUtilities::Argument minPaddingArg;
ApplicationUtilities::Argument maxPaddingArg;
ApplicationUtilities::Argument prefPaddingArg;
2016-06-14 00:52:33 +02:00
ApplicationUtilities::Argument tagPosValueArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument forceTagPosArg;
2016-06-14 00:52:33 +02:00
ApplicationUtilities::Argument tagPosArg;
ApplicationUtilities::Argument indexPosValueArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument forceIndexPosArg;
2016-06-14 00:52:33 +02:00
ApplicationUtilities::Argument indexPosArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument forceRewriteArg;
2016-06-14 00:52:33 +02:00
ApplicationUtilities::Argument valuesArg;
ApplicationUtilities::Argument outputFilesArg;
2015-11-28 00:20:49 +01:00
ApplicationUtilities::Argument setTagInfoArg;
};
2016-07-04 23:28:11 +02:00
extern const char *const fieldNames;
extern const char *const fieldNamesForSet;
void printFieldNames(const ApplicationUtilities::ArgumentOccurrence &occurrence);
void displayFileInfo(const ApplicationUtilities::ArgumentOccurrence &, const ApplicationUtilities::Argument &filesArg, const ApplicationUtilities::Argument &verboseArg);
void generateFileInfo(const ApplicationUtilities::ArgumentOccurrence &, const ApplicationUtilities::Argument &inputFileArg, const ApplicationUtilities::Argument &outputFileArg, const ApplicationUtilities::Argument &validateArg);
2016-06-25 23:11:16 +02:00
void displayTagInfo(const ApplicationUtilities::Argument &fieldsArg, const ApplicationUtilities::Argument &filesArg, const ApplicationUtilities::Argument &verboseArg);
void setTagInfo(const Cli::SetTagInfoArgs &args);
2016-08-03 17:48:53 +02:00
void extractField(const ApplicationUtilities::Argument &fieldArg, const ApplicationUtilities::Argument &attachmentArg, const ApplicationUtilities::Argument &inputFilesArg, const ApplicationUtilities::Argument &outputFileArg, const ApplicationUtilities::Argument &verboseArg);
2015-04-22 19:33:53 +02:00
}
#endif // MAINFEATURES_H